草庐IT

SQLServer2008R2

全部标签

c++ - Visual Studio 2008 下的虚假 C++ 析构函数调用(在 GCC 下不存在)

采用以下(人为的)类层次结构,从构造函数和析构函数打印到控制台:#includeclassA{public:A(){std::cout在linux下用gcc编译,按预期打印AB~AX~B~A(X之前打印的~A是将值传递给func的结果,它创建了一个在函数返回时被破坏的拷贝)。但是在windows下使用VS2008编译它会打印AB~A~AX~B~A-额外的~A来自哪里?如果复制xtor被显式定义A(A&that){};或者如果析构函数被声明为虚拟(可以说应该是),它就会消失。 最佳答案 评论表明MSVC2008使用g++不使用的临时参

c++ - 将 Windows Dll 转换为 C++ Visual Studio 2008 的 .lib

我知道有一个工具叫Dlltolib,但开发人员要价1000美元。我只需要转换一个库,一次,所以不容易证明这个价格是合理的。我试过IMPLIB32.EXE,但我只得到空的.lib文件。我怎样才能做到这一点?也许我可以编写一个简单的转换应用程序?添加1:Dll通常是stdcall而不是cdecl并且是用较旧的C语言编写的,例如不是C#或.NET或C++的语言。我现在需要从C++应用程序中调用它们。一个例子是SQLite.dll或zlib.dll。我无权访问这些dll的.lib文件。补充2:我为VS2008重新编写了这段代码http://floodyberry.wordpress.com/2

c++ - VS2008 : how to run two separate projects from the same solution

我有一个非托管C++控制台应用程序解决方案(.sln),其中两个项目(.vcproj)都构建为.exe。我想同时运行它们(一个是客户端,一个是服务器)。如何配置我的VisualStudio,以便当我按下一个按钮(例如F5)时,它会足够聪明地按照我指定的顺序依次运行?目前我要做的是将一个项目设置为“启动项目”,然后点击“Ctrl+F5”运行一个,然后我必须将“启动项目”更改为另一个,然后点击“Ctrl+F5"。确实,每天这样做25次是很痛苦的。=p 最佳答案 在解决方案资源管理器中右键单击解决方案,单击属性(如果窗口为空白,请再次选择

c++ - CUDA 链接错误 - Visual Express 2008 - 由于(空)配置文件导致 nvcc 致命

在过去的2周里,我一直在广泛寻找可能的解决方案来解决我的错误。我已经成功安装了Cuda64位编译器(工具)和SDK,以及64位版本的VisualStudioExpress2008和带有Framework3.5的Windows7SDK。我正在使用WindowsXP64位。我已经确认VSE能够以64位编译,因为我使用以下网站上的步骤可以使用所有64位选项:(因为VisualExpress本身不包含64位包)http://jenshuebel.wordpress.com/2009/02/12/visual-c-2008-express-edition-and-64-bit-targets/6

c++ - 如何向我的程序添加描述(-> 任务管理器中的描述列)(VS 2008,C++)

我在VisualStudio2008中有一个简单的非托管c++项目,并且想添加描述文本。现在我只在任务管理器描述列(进程选项卡)中看到可执行文件的名称,但我想在那里提供我自己的文本。 最佳答案 您需要将VERSIONINFO资源添加到您的项目中,并将“FileDescription”属性设置为您要显示的字符串。MSDNVERSIONINFOarticleVS_VERSION_INFOVERSIONINFOFILEVERSION4,0,0,0PRODUCTVERSION4,0,0,0FILEFLAGSMASK0x3fL#ifdef_D

c++ - 如何处理 Visual Studio 2008 中的警告 C4100

出于某种原因,我的VisualStudio2008开始显示以下代码的警告:“intmain(intargc,char**argv)”,真的很烦人。详细的警告输出是(您可以忽略行号):1>.\main.cpp(86):警告C4100:'argv':未引用的形式参数1>.\main.cpp(86):警告C4100:'argc':未引用的形式参数我想知道VisualStudio2008中是否存在意外更改的设置。或者我应该如何处理这个警告? 最佳答案 如果参数未引用,您可以不命名:intmain(int,char**){}而不是intmai

c++ - 如何在 Visual Studio 2008 中启用 SSE/SSE2 指令集(使用 CMake)?

在VisualStudio2005中,我进入了:查看-->属性页-->C/C++-->代码生成-->启用增强指令集但在VisualStudio2008中?提前致谢 最佳答案 如果您正在寻找SSE/SSE2:Project>Properties>ConfigurationProperties>C/C++>CodeGeneration>EnableEnhancedInstructionSet,或附加/arch:SSE(或/arch:SSE2)在CommandLine>AdditionalOptions.不过,您需要有一个原生项目,并至少

c++ - VC2008 编译器错误打开 sbr 文件 (C2418 C1903 C2471)

编辑:请参阅下面的修补程序答案。原始问题:在为我们的船编程冒险进行设置时,我必须设置源代码控制并修复项目文件以供团队使用。(该项目以前只有一个人在设置项目包括等方面采取捷径)我正在修复那些SLN和Proj文件。当尝试在外部USB驱动器上进行构建时(我没有在主硬盘驱动器上尝试过),我遇到了奇怪的错误(很多错误用于各种文件):fatalerrorC1083:Cannotopencompilergeneratedfile:'.\Debug\.sbr':Permissiondenied这些文件在vcproj文件中被引用,相对路径用双引号括起来:RelativePath="..\..\Sourc

c++ - Visual Studio 2008 速成版中的 "Cannot open include file: ' fstream.h '"错误

编译这段代码时,我得到:fatalerrorC1083:无法打开包含文件:'fstream.h':没有这样的文件或目录为什么?代码:#include//useasneededforyoursystem#include#include#include#include//**************GlobalDatacharifileName[30],oFileName[30];fstreaminFile,outFile;//************DatastructurestructGLfloatPoint{GLfloatx,y;};constintMAX=100;classGLfl

c++ - 在 Visual C++ 2008 的 Debug模式下找不到 MSVCR90D.dll

我在使用VisualC++2008时遇到问题。我已经安装了opencv,并且我已经创建了一个新程序,并且我构建它时没有出现任何错误。但是,它提示调试时找不到MSVCR90D.dll。在Release模式下完全没有问题。我确实在Winsxs文件夹之一中有MSVCR90D.dll。有谁知道解决这个问题?这是一个已知的错误?杰拉德 最佳答案 本forumpost中描述了几种潜在的解决方案。看看这些是否有帮助。从那里得到一个提示:Goto%SystemDrive%\Windows\WinSxSandlookforthedirectoryx8