问题标签 [visual-c++-2010]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
visual-studio - 寻求文件名与 Visual C++ 头文件冲突的解决方法
我们的代码包括vector
,其中包括memory
,其中包括微软的intrin.h
,但我们intrin.h
在我们的包含路径上有一个我们自己的。因此memory
选择我们的intrin.h
而不是系统的,并且无法编译。
我们intrin.h
和微软都已经存在多年了,但我们之前从未发生过冲突——VS 2010 引入了一个新的依赖项。移动或重命名我们的intrin.h
会很痛苦,我宁愿避免它。
有什么方法可以说服 MSVC 在我们自己之前查看系统包含目录吗?编辑memory
说:
而不是
可行,但我不希望整个团队都必须修改他们的 Visual Studio 环境(并在面对服务包等时保持修改)
还有其他解决方法吗?
c++ - 我应该将 .vcxproj.filter 文件添加到源代码管理吗?
在评估 Visual Studio 2010 Beta 2 时,我看到在转换后的目录中,我的vcproj文件变成了 vcxproj文件。每个项目旁边还有vcxproj.filter文件,这些文件似乎包含文件夹结构的描述(\Source Files、\Header Files 等)。
您认为这些过滤器文件应该按用户保留,还是应该在整个开发组中共享并签入 SCC?
我目前的想法是检查它们,但我想知道是否有任何理由不这样做,或者也许是我一定要检查它们的充分理由。
明显的好处是,如果我正在查看其他人的机器,文件夹结构将匹配,但也许他们想在逻辑上重新组织事物?
c++ - 确定内存中函数/存根/命名空间的大小
我在一个名为stub
. 我必须确定命名空间的确切起始地址和结束地址,至少是内存中命名空间的大小(将这些函数复制到另一个进程中)。虽然这在 Visual C++ 2008 中通过添加一个
在命名空间的末尾并使用
来确定存根的大小。
这是因为 Visual C++ 保留了 .cpp 文件中的函数顺序,但在 Visual C++ 2010 中似乎不再如此。
如何使用编译指示指令、编译器/链接器工具或类似工具找出函数或整个命名空间/存根的大小?
c++ - 如果从 lambda 内部调用,则无法实例化使用 decltype 推断返回类型的函数模板?
我正在尝试使用 C++0x,特别是 lambda 表达式和 decltype 来简化我的一些代码,使用 MSVC10 RC 编译器。
我遇到了以下非常奇怪的问题:
如注释中所示,编译器在该行生成错误foo([]() { })
。
我讨厌大喊“编译器错误”,但我真的看不出这个错误有什么好的解释。显然,在外部 lambda 表达式内部时,编译器无法 foo
为内部 lambda 专门化函数模板。
但是,如果将 的定义foo
更改为硬编码返回类型,如下所示:
然后一切都编译得很好。
当用于在我不知道的另一个 lambda 范围内推断 lambda 表达式参数的返回类型时,是否存在一些模糊的 decltype 怪癖?
c++ - 在 Visual C++ 中 switch 是如何编译的,它的优化和速度如何?
当我发现我只能在 C++ 的switch
语句中使用数值时,我认为它与一堆if-else
's 之间一定有更深层次的区别。
因此我问自己:
- (如何)在运行时速度、编译时优化和一般编译方面有什么
switch
不同?if-elseif-elseif
我这里主要说的是MSVC。
visual-c++ - Visual Studio Express 2010 许可证
我可以将 Visual C++ 2010 Express 编译器用于商业用途吗?据我所知,在 2010 版本之前它总是被允许的,但现在当我启动 IDE 时,它会写“仅用于评估目的”。我在任何地方都找不到完整的许可证文件(不在已安装的文件中,不在 Google 中),所以我很怀疑,我应该使用它,还是应该降级到 MSVC++2008 版本。
c++ - Visual C++ 2010 Express:扩展 SDK 可用?
据称,与以前的版本不同,Visual C++ 2010 Express 支持第三方扩展。我刚刚下载了 Visual Studio 2010 的候选版本 SDK,但安装程序失败说我没有安装 Visual Studio(这是真的,因为我使用 Visual C++ 2010 Express)。我错过了什么吗?是否有适用于 Express 的扩展 SDK 版本?
c++ - 如何让屏幕暂停?
可能重复:
如何阻止 C++ 控制台应用程序立即退出?
所以我正在学习 c++,我得到了这个例子,我想运行它。但我不能让它熬夜,除非我改变它。我如何让 Microsoft Visual 2010 在我发布它后在程序结束时跟上屏幕?
c++ - std::make_shared 作为默认参数无法编译
在 Visual C++(2008 和 2010)中,以下代码无法编译并出现以下错误:
错误 C2039:“make_shared”:不是“全局命名空间”的成员
错误 C3861:“make_shared”:找不到标识符
它抱怨 P::Foo() 而不是 ::Foo() 的定义。
有谁知道为什么 Foo() 使用 std::make_shared 而不是 P::Foo() 的默认参数是有效的?
c++ - initializer_list 在 VC10 中不起作用
我在 VC++ 2010 中编写了这个程序:
但是当我编译项目时出现此错误:
错误 1 错误 C2552: 'c' : non-aggregates cannot be initialized with initializer list c:\users\pswin\documents\visual studio 2010\projects\test_c++0x\test_c++0x\main.cpp 27
和
2 IntelliSense:“class1”类型的对象不允许使用“{...}”进行初始化 c:\users\pswin\documents\visual studio 2010\projects\test_c++0x\test_c++0x\main.cpp 27
问题是什么?