标签: visual-c++-2010

我应该将.vcxproj.filter文件添加到源代码管理中吗?

在评估Visual Studio 2010 Beta 2时,我看到在转换后的目录中,我的vcproj文件变成了vcxproj文件.每个项目旁边还有vcxproj.filter文件,它们似乎包含文件夹结构的描述(\ Source Files,\ Header Files等).

您是否认为这些过滤器文件应该按用户保留,还是应该在整个开发组中共享并检入SCC?

我目前的想法是检查它们,但我想知道是否有任何理由不这样做,或者也许是我应该检查它们的好理由.

显而易见的好处是,如果我正在查看其他人的机器,文件夹结构将匹配,但也许他们想要在逻辑上重新组织事物?

c++ version-control visual-studio-2010 visual-studio visual-c++-2010

160
推荐指数
4
解决办法
5万
查看次数

安装Windows SDK 7.1时出错

我在安装我见过的互联网上发布的Windows SDK时遇到了一个错误,但没有一个解决方案适合我.这是我得到的日志

9:43:37 AM Monday, October 14, 2013: SFX C:\Program Files\Microsoft SDKs\Windows\v7.1\Setup\SFX\vcredist_x64.exe installation started with log file C:\Users\clarkbd\AppData\Local\Temp\Microsoft Windows SDK for Windows 7_c3c42538-8a3e-439d-be39-aee3078ca098_SFX.log
9:43:43 AM Monday, October 14, 2013: C:\Program Files\Microsoft SDKs\Windows\v7.1\Setup\SFX\vcredist_x64.exe installation failed with return code 1603
9:43:53 AM Monday, October 14, 2013: [SDKSetup:Error] Config_Products_Install: Installation of Product Microsoft Windows SDK for Windows 7 (failed): Please refer to Samples\Setup\HTML\ConfigDetails.htm document for further information. Stack:    at SDKSetup.Product.ConfigureRelatedSfx()    at SDKSetup.Product.ConfigureNewProduct(ManualResetEvent CancelEvent)
9:43:53 AM Monday, October 14, 2013: [SDKSetup:Info] Config_Products_InstallNew: End installation …
Run Code Online (Sandbox Code Playgroud)

windows sdk visual-c++-2010

82
推荐指数
2
解决办法
8万
查看次数

Visual Studio 2010的奇怪"警告LNK4042"

我刚刚被Visual Studio 2010(C++)发出的一些非平凡的警告殴打(而不是很难).

编译给出了以下输出:

1 Debug\is.obj:警告LNK4042:对象指定多次; 附加项忽略
1 Debug\make.obj:警告LNK4042:对象指定多次; extras忽略
1 Debug\view.obj:警告LNK4042:对象指定多次; extras忽略
1 identity.obj:错误LNK2019:未解析的外部符号void __cdecl test::identity::view(void)(?view @ identity @ test @@ YAXXZ)在函数中引用void __cdecl test::identity::identity(void)(?identity @ 0test @@ YAXXZ)
1 identity.obj:错误LNK2019:未解析的外部符号void __cdecl test::identity::make(void)(?make @ identity @ test @@ YAXXZ)在函数中引用void __cdecl test::identity::identity(void)(?identity @ 0test @@ YAXXZ)
1 range.obj:错误LNK2019:未解析的外部符号void __cdecl test::range::is(void)(?是@ range @ test @@ YAXXZ)在函数中引用void __cdecl test::range::range(void)(?range @ 0test @@ YAXXZ)

链接器错误总是很难调试...但是有未解决的引用,所以我检查了......但是源代码是格式良好的......最后它击中了我:

我的文件夹层次结构如下:

src/
  identity/
    is.cpp
    make.cpp
    view.cpp
  range/ …
Run Code Online (Sandbox Code Playgroud)

c++ visual-studio-2010 visual-studio visual-c++ visual-c++-2010

76
推荐指数
4
解决办法
4万
查看次数

何时可以在初始化列表中省略外括号?

编译下面的代码时,我在VC2010中遇到错误C2078.

struct A
  {
  int foo;
  double bar;
  };

std::array<A, 2> a1 = 
  // error C2078: too many initializers
  {
    {0, 0.1},
    {2, 3.4}
  };

// OK
std::array<double, 2> a2 = {0.1, 2.3};
Run Code Online (Sandbox Code Playgroud)

我发现正确的语法a1

std::array<A, 2> a1 = 
  {{
    {0, 0.1},
    {2, 3.4}
  }};
Run Code Online (Sandbox Code Playgroud)

问题是:为什么需要额外的括号a1但不是必需的a2

更新

这个问题似乎并不特定于std :: array.一些例子:

struct B
  {
  int foo[2];
  };

// OK
B meow1 = {1,2};
B bark1 = {{1,2}};

struct C
  {
  struct 
    { 
    int a, b; 
    } …
Run Code Online (Sandbox Code Playgroud)

c++ visual-c++-2010 c++11

47
推荐指数
1
解决办法
6797
查看次数

Visual Studio Express 2010许可证

我可以将Visual C++ 2010 Express编译器用于商业用途吗?据我所知,它在2010版本之前总是被允许,但是现在当我启动IDE时,它写了"仅用于评估目的".我无法在任何地方找到完整的许可证文件(不是在已安装的文件中,而是在Google中),所以我有疑问,我应该使用它,还是应该降级到MSVC++ 2008版本.

visual-c++ visual-c++-2010

41
推荐指数
2
解决办法
4万
查看次数

警告C4800:'int':强制值为bool'true'或'false'(性能警告)

我的代码中有这个问题:

bool CBase::isNumber()
{
return (id & MID_NUMBER);
}

bool CBase::isVar()
{
return (id & MID_VARIABLE);
}

bool CBase::isSymbol()
{
return (id & MID_SYMBOL);
}
Run Code Online (Sandbox Code Playgroud)

c++ visual-c++-2008 visual-c++-2010

30
推荐指数
2
解决办法
3万
查看次数

如何在Visual C++中编译切换以及如何优化和快速?

当我发现我只能在C++的switch语句中使用数值时,我认为那里必须有一些更深的区别if-else.

所以我问自己:

  • (如何)在运行时速度,编译时优化和常规编译方面switch有所不同if-elseif-elseif?我这里主要谈的是MSVC.

c++ if-statement switch-statement visual-c++ visual-c++-2010

29
推荐指数
2
解决办法
9782
查看次数

C++ 0x Lambda开销

在C++ 0x(在VS2010下)使用lambda表达式是否有任何开销?
我知道使用函数对象会产生开销,但我指的是传递给STL算法的表达式.编译器是否优化了表达式,消除了看起来像函数调用的东西?我开始非常喜欢lambda表达式,但我有点担心速度惩罚.

提前致谢!

c++ lambda visual-studio-2010 visual-c++-2010 c++11

26
推荐指数
2
解决办法
9504
查看次数

g ++的-g选项等同于VS2010 cl编译器?

使用带有-g选项的 g ++ ,我可以使用gdb进行调试.

与Visual Studio 2010 cl.exe编译器相同的是什么?

页面具有用于链接的不同库(调试/发布).

如果我使用cl.exe编译调试选项,是否必须使用相应的库链接选项(/ MD/MT vs/MDd/MTd)?

debugging compiler-options visual-studio visual-c++ visual-c++-2010

19
推荐指数
2
解决办法
8672
查看次数

Visual C++ 2010中的预处理程序指令缩进

我经常发现自己处于需要缩进预处理程序指令的情况,例如其他代码(例如#if缩进if).它似乎是合法的,这是常识,它有时是一件好事,但Visual不会让它变得容易.

有没有办法阻止Visual C++ 2010编辑器每次我无辜地按下时将代码粘贴到左边#?并且不要使用自动缩进(CTRL + K,CTRL + F)来破坏预处理程序指令缩进?或者更好的是,像其他一样处理预处理器指令?

c++ indentation visual-c++-2010 c-preprocessor preprocessor-directive

19
推荐指数
3
解决办法
2784
查看次数