草庐IT

vC_sidetone

全部标签

c++ - 有没有办法在不包含 stdafx.h 的情况下使用 VC++ 2010?

我已经成功安装了M$VC2010并开始使用它编写简单的程序。我对#include感到非常恼火,那么有没有什么办法可以不用它编译运行程序呢??? 最佳答案 它用于预编译的头文件。不要使用预编译的header,不要包含它。 关于c++-有没有办法在不包含stdafx.h的情况下使用VC++2010?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/2909953/

c++ - 结构的Printf? (C/C++, VC2008)

只需在VC2008中构建并运行:structA{inta;intb;intc;};Aa={10,20,30};printf("%d%d%d\n",a);这正常吗?102030我要投!但它不起作用:structA{inta;intb;intc;operatorint(){returna+b+c;}};Aa={10,20,30};printf("%d\n",a);输出只有:10我需要自动转换模板实用程序。这是:https://code.google.com/p/boolib/source/browse/boolib/crypt/ShakedValue.h它应该隐藏在内存中的值(value)

c++ - VC++中未初始化的内存块

众所周知,VisualC++运行时使用特殊的非零标记标记未初始化或刚刚释放的内存块。有没有办法完全禁用此行为而无需手动将所有未初始化的内存设置为零?由于0xFEEEFEEE!=0,这对我的有效非空检查造成了严重破坏。嗯,也许我应该解释得更好一点。我创建并初始化了一个变量(通过new),一切顺利。当我释放它(通过删除)时,它将指针设置为0xFEEEFEEE而不是NULL。当我插入对NULL的正确检查时,就像所有管理自己内存的好程序一样,我遇到了问题,因为0xFEEEFEEE传递了一个NULL检查没有问题。除了在删除它们时手动将所有指针设置为NULL之外,还有什么好方法可以检测内存何时已被

c++ - VC++允许/##/作为宏的值——如何在eclipse/mingw-gcc中处理它?

我正在尝试在eclipse/mingw-gcc中编译一个真正的win32应用程序,直到现在都没有成功(参见https://stackoverflow.com/questions/9162976/how-to-compile-a-win32-application-in-eclipse-using-the-mingw-gcc-toolchain)无论如何,在解决另一个错误时,文件c:\ProgramFiles(x86)\MicrosoftSDKs\Windows\v7.0A\Include\WTypes.h中的以下行引起了我的注意好奇心:#define_VARIANT_BOOL/##/它

C++ Armadillo : GCC vs VC++2013: Operator () and overloading

我正在尝试使用ArmadilloC++库开发Linux/Win64应用程序。以下代码在GCC-4.7中编译,但在使用Armadillo提供的VS项目文件的VisualStudio2013中编译失败。#include#include"armadillo"usingnamespacearma;usingnamespacestd;//worksinGCC-4.7//VC++2013:compileerror:C3066voidfoo1(vec::fixed&bar){bar(1)=1.;}//worksvoidfoo2(vec::fixed&bar){bar.at(2)=1.;}//work

c++ - 这是 "new auto(enum_type)"的 Microsoft VC++ 2010 编译器错误吗

环境:MicrosoftVisualStudio2010withSP1Preminum(10.0.40219.1SP1Rel),WindowsXPSP3VC10编译器支持auto关键字,但推导的类型相关信息对于枚举似乎并不总是正确的。例子:#includeenumfruit_t{apple=100,banana=200,};intmain(){constautopa=newauto(banana);constautopb=newfruit_t(banana);static_assert(std::is_same::value,"notsame!");deletepb;deletepa;

c++ - 使用 gdb 在 MS VC++ 2010 Express 中编译的调试程序

是否可以使用MicrosoftVisualC++Express构建可执行文件,以便使用gdb对其进行调试?我尝试使用C7兼容的/Z7编译器选项和/debug链接器选项,但生成的.pdb文件无法被gdb识别:(gdb)symbol-fileHelloWorldVC.pdb`HelloWorldVC.pdb':can'treadsymbols:Fileformatnotrecognized. 最佳答案 GDB的调试格式与Microsoft的编译器不同。实际上,没有记录PDB格式。因此,您不能将Microsoft编译器生成的调试信息与GD

c# - 如何将 VC++ 2015 可再发行组件与我的 ClickOnce (.NET) 应用程序捆绑在一起?

我有一个C#应用程序在通过MicrosoftClickOnce部署的.NETFramework4.5上运行。我还使用了MicrosoftSDK中的一个名为DComPerm.exe的小实用程序,这是一个我必须单独编译的C++应用程序。我的主应用程序使用Process.Start()访问此可执行文件。当我第一次尝试在客户端计算机上运行它时,我收到一条错误消息,指出当应用程序尝试调用DComPerm.exe时缺少VCRUNTIME140.dll。这是有道理的...因为该程序是用C++编译的,它需要VisualC++2015Redistributable软件包,而该软件包尚未安装在客户端计算机

c++ - VC++ 支持_mm_malloc 吗?

VisualStudioC++2008/2010是否正式支持_mm_malloc?它在malloc.h中定义,但我在MSDN库中找不到它的描述。 最佳答案 没有直接回答您的问题,但我认为您应该使用_aligned_malloc.如果我的理解是正确的,_mm_malloc适用于英特尔编译器。 关于c++-VC++支持_mm_malloc吗?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questio

c++ - 如何让 vc++ 和 g++ 在依赖限定类型的类型名方面表现相同?

是否可以为cl.exe提供一个开关,当限定的依赖类型中缺少typename时,它会启用警告或错误?我工作的环境中,开发人员倾向于在一个平台(Windows或Linux)上工作,代码最终每晚都在两个平台上构建。我们遇到了一个问题,人们忘记在Windows上的限定依赖类型上使用typename,VisualC++2008会在可能的情况下自动插入缺失的typename。当他们checkin这样的代码时,它会破坏Linux上的构建,其中g++需要typename。调整Makefile是可取的,这样我们就可以期望在Windows和Linux上有相同的typename行为,以减少构建中断的可能性。