Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/142.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Visual C++中的缺失/期望特征_C++_Visual C++_Ide - Fatal编程技术网

Visual C++中的缺失/期望特征

Visual C++中的缺失/期望特征,c++,visual-c++,ide,C++,Visual C++,Ide,我找不到另一个已经被问过的话题,所以我开始一个。。。如果有,请随意链接并关闭此链接 P> Visual C++中的缺失特征是什么? 《微软》在过去两个版本中为C/VB.NET开发增添了一些好的特性,但是C++已经有点被忽略了。我对其他IDE没有太多的经验,但是在过去五年中,人们喜欢C++开发的一些进展。我很好奇人们认为最缺乏的是VisualC++中缺少的最显著的特征。 注: 不,我不为微软工作,我只是经常使用他们的东西,希望看到它变得更好 这是针对本地C++开发的,虽然我认为C++ +CLI也

我找不到另一个已经被问过的话题,所以我开始一个。。。如果有,请随意链接并关闭此链接

<> P> Visual C++中的缺失特征是什么? 《微软》在过去两个版本中为C/VB.NET开发增添了一些好的特性,但是C++已经有点被忽略了。我对其他IDE没有太多的经验,但是在过去五年中,人们喜欢C++开发的一些进展。我很好奇人们认为最缺乏的是VisualC++中缺少的最显著的特征。 注:

不,我不为微软工作,我只是经常使用他们的东西,希望看到它变得更好 这是针对本地C++开发的,虽然我认为C++ +CLI也应该是公平的游戏。 可以随意添加多个功能作为单独的条目;这样人们就可以投票选出他们认为最缺乏的东西
重构。

我认为VC++迫切需要一件事:

跨步能力
通过未记录的NativeDE子项google子项名称可以获得一种跨步功能,这对于琐碎的构造函数/等非常有用。但是,随着boost、TR1、COM抽象和其他多步传递代码变得越来越常见,VC++确实可以使用在调试器中自动单步执行函数的功能。请注意,C已经作为一个属性存在,但它是为本机C++ IMRO所必需的,并且作为一个文档化的、支持的能力。

< P>这不是IDE相关的,而是语言相关的。我希望MS至少支持C99的一些更改。具体而言:

stdint.h和inttypes.h。我有 我自己的版本,所以这不是一个大问题 为我交易,但MS真的应该 我很久以前就把这些放进去了。 它们绝对不需要改变 编译程序。 在C中混合声明/代码和内联。 他们已经为C++做了这件事,为什么不让我用C做呢? _布拉格马。他们已经做到了 非常相似的东西 我想,但这已经够不一样了 它需要IFDEF才能工作。
如果在一行上存在多个由序列点分隔的表达式,则允许逐个单步执行各个语句。示例:在for循环中,在第一个过程中将初始化和比较作为两个单独的语句逐步执行,在后续过程中将比较和增量作为两个单独的语句逐步执行


单步执行宏。

除了单步执行宏之外,我想知道是否有人认为编译器最终需要支持单步执行模板扩展功能?随着元编程变得越来越标准,模板越来越复杂,编译时也越来越复杂,这可能会成为一个问题。

我似乎是地球上为数不多的使用此功能的人之一,但我真的很希望微软能在他们的编译器和IDE中正确地实现关键字and,or and–事实上,所有的ISO 646都有,但这三个是唯一真正有用的

他们有很多“好”的理由不去实现它们——不是一个正在崩溃的bug,没有很多人使用它们,yadda-yadda-yadda-yadda——但这是一件小事,他们似乎太粗心了,只是出于怨恨而不去实现它

…对于那些不知道我在说什么的人:

// This is valid C++
bool x = not (a and b) or c;

// … and is equivalent to this:
bool x = ! (a && b) || c;

对于不立即支持上述代码但符合标准的编译器必须支持此代码的编译器,关键字也被定义为标准标题ciso646中的宏。

因为我们梦想。。。您提到了TMP,如果有TMP调试器,它将是一个杀手

我个人喜欢的另一件事是类图显示,就像.NET语言可以显示的那样。我认为它肯定会有助于可视化您试图可视化的新代码项目。

如果我在头文件中声明一组函数,只需单击一下,所有函数都会自动扩展到其.cpp文件中。反之亦然。我不确定是否已经有了用于此的宏。

自动生成代码、getter/setter等,很像IntelliJ IDEA for Java


<>编辑:并且添加了几乎所有当前由Visual Asvices X提供的东西。在VisualC++中,这是绝对必要的。

< P>我个人想的另一件事:

按名称中断函数的能力,无论函数从何处调用或定义在何处


破解代码中的函数很容易,但我经常发现自己想要破解那些我没有OSAPI函数源代码的函数,并且不可能追踪代码和库代码中调用函数的每个实例。VS能够中断函数,但对于代码中没有的函数,它似乎不起作用。

能够设置编译线程的优先级

如果你能 利森终于修好了。当我右键单击代码窗口中的任意位置时,我的VS 2008会冻结10分钟以上。
C/VB.NET获得所有的智能信息-不是C++的情况……/P>< P> Visual C++编译器缺少对登记的支持。 关键词。它只是忽略了这一点

在应用程序的热点中,重要的是 能够指导编译器做正确的事情

或者正如詹姆斯·普拉特所说:

注册表关键字被忽略。这对于生成快速代码至关重要,因为编译器并不总是选择正确的变量保存在寄存器中

register关键字是一个可以滥用的强大工具 这可能会损害便携性,但我认为应该是这样 支持

出于某种原因,微软不允许我们使用这种级别的 控制主要论点是编译器更智能 而不是软件工程师。这根本不是真的 案例。如果Metroworks对他们的 PowerPC/Macintosh的C++编译器我不会 能够将面向用户的应用程序的速度提高2倍 主操作时间从4秒到2秒 将重要变量分配给寄存器,消除 主存储器访问。这只花了一个小时, 通过反汇编生成的代码和
消除内存访问。

哇,这对我来说是个新的挑战。康拉德回答得很酷。在这一点上,我可能和微软是一致的:这看起来像是用宏轻松完成的事情,而不是硬编码到编译器中。尽管如此,这对人们来说还是一个很好的建议@尼克:标准上说它们是关键词,所以它们不可能是宏。就我个人而言,我不同意将它们作为关键字,但符合标准是一件好事。@konrad:这正是我想要使用的。糟糕的是,他们没有实现它。同样,我希望它能够建议添加适当的头文件,以修正所选的未定义符号。它做到了。F11至少在函数调用中进入了一个语句。为什么在代码要经过一段代码之后不在代码上设置断点?Visual AsdioX提供了相当不错的C++重构,但是它在RESHARPER或java IDE所提供的任何地方都没有完成。我们都知道,VS带来的默认C和VB重构……我不敢相信Whole Tomato将visual assist的价格提高到了250美元,这与visual Studio标准运行的价格差不多……+1代表stdint.h,其他的,对Microsoft来说不太公平,您的论点是特定于编译器的,可能不适用于MSVC编译器。除非你有针对MSVC编译器的反例,否则我倾向于相信MS;毕竟,一些非常有能力的软件工程师在使用MSVC时已经停止为他们的性能关键部分编写优化汇编,因为据他们估计,他们不可能比编译器做得更好。请注意,我并不是说你错了,或者你的建议无效,只是为了证明它的正确性而给出的示例并不特别适用,您可能需要进一步研究此功能是否真的对您有帮助。同样的代码也在Windows上运行,因此我可以编写x86汇编代码来击败MSCV编译器。这应该是相当简单的,因为它只有3行C和10个CPU操作码。但是,自从ZX St/Z80天以来,我还没有编写汇编程序——对于Windows,它还存在一些其他的C++编译器来维护登记关键字吗?GCC?C代码位0和endpos是循环中的常量-通常是几百次迭代:[cv=pCharactVectorTable[*p++];R=R>>1 |位0&cv;如果R&endpos]