草庐IT

alpha版本

全部标签

c++ - 使用较新版本的 MSVC 链接旧版本的运行时?

我拥有VS2008Pro,并想与VS2005的运行时MSVCRT80进行兼容性测试,但我不想为此购买它。有没有办法在没有VS2005的情况下链接到MSVCRT80?谢谢 最佳答案 官方支持nativemulti-targeting直到VisualStudio2010才出现,它允许您选择v100或v90作为您的“平台工具集”。VisualStudio2008中没有此类功能。这里有一个关于如何onecanachievethesameeffectinVisualStudio2008的讨论。,但您的计算机上似乎还需要安装VS2005才能使其

c++ - yyparse() 未在 Bison/Flex C++ 项目中仅针对某些版本的 gcc/bison/flex 声明

首先,我对Bison和Flex还很陌生。我知道这些工具是为在C中使用而设计的,我感觉我所有的问题都来自于在C++中使用它们。我不确定我是否以正确的方式完成了它。该代码在我的计算机上编译正常,但在我的大学服务器上编译不正常。我已将问题隔离到此处发布。在我的大学:$(g++--version;bison--version;flex--version)|grep'[0-9]\.'g++(Debian4.4.5-8)4.4.5bison(GNUBison)2.4.1flex2.5.35Athome:HOME$(g++--version;bison--version;flex--version)

c++ - 预编译 header 在使用 Qt Creator/qmake/MinGw 的调试版本中不起作用

在QtCreator中,我有一个使用PRECOMPILEDHEADERS的pro文件。当我在Release模式下构建时,构建工作非常完美。但是在Debug模式下构建会出错,生成目标文件失败。示例:17:12:40:RunningstepsforprojectEuclide...17:12:40:Configurationunchanged,skippingqmakestep.17:12:40:Starting:"C:\Qt\Tools\mingw48_32\bin\mingw32-make.exe"C:\Qt\5.2.0\mingw48_32\bin\qmake.exe-specwin

c++ - 在 Visual Studio 中发布版本仍然更慢?

当然,Debug构建比Release构建慢。但是,当我在Release模式下构建时,应用程序从资源管理器手动启动时的性能比从VisualStudio中启动时要好得多。例如,在我的项目中,文件系统访问需要大约10倍的时间。由于是同一个可执行文件,我认为它应该运行相同的指令。为什么从VisualStudio内部启动的Release构建如此缓慢?我怎样才能获得完整的原生速度? 最佳答案 我认为区别在于堆。MSDN说:调试器创建的进程(也称为派生进程)的行为与调试器未创建的进程略有不同。调试器创建的进程不使用标准堆API,而是使用特殊的调试

c++ - 发布版本中成员函数和全局函数的性能差异

我实现了两个函数来执行两个Vector(不是std::vector)的叉积,一个是成员函数,另一个是全局函数,这里是关键代码(其他部分省略)//formemberfunctiontemplateSquareMatrixVector::outerProduct(constVector&vec3)const{SquareMatrixresult;for(unsignedinti=0;ivoidouterProduct(constVector&v1,constVector&v2,SquareMatrix&m){for(unsignedinti=0;i它们几乎相同,只是一个是有返回值的成员函数

c++ - 如何将 Visual Studio 2005 的平台工具集添加到较新 IDE 版本的 `Platform Toolset` 列表中?

我已经安装了VisualStudio2005-2015。我将使用VisualStudio2005的平台工具集,但列表中没有此变体:如何将VisualStudio2005的平台工具集添加到较新IDE版本的PlatformToolset列表中? 最佳答案 v100是MSVC2010工具集v90是MSVC2008工具集v80是MSVC2005工具集,这就是您要找的。按照以下步骤设置MSVC2005PlatformToolset.创建v80C:\ProgramFiles\MSBuild\Microsoft.Cpp\v4.0\Platform

c++ - C++中如何比较版本号

这个问题在这里已经有了答案:Compareversionsasstrings(5个答案)关闭6年前。我们的教授希望我们编写一个程序来比较两个版本号,例如0.1stringnumb1,numb2;if(numb1[0]=='.'){numb1="0"+numb1;}我对第二个数字做同样的事情。现在我需要帮助来告诉我如何删除第一个点以外的点。我们的教授希望我们使用这个特定的功能:intcompareVersions(字符串ver1,字符串ver2)。如果ver1>ver2:返回1如果版本1顺便说一句,有些视觉编号可能很长,例如2.3.2.2.3.1.1.5.3.5.6.2或1.1.1.1.

开发新iOS版本所需的XCode更新

当发布新的iOS版本时,为什么下载新版本的Xcode很重要?假设我在手机上安装了iOS11,然后尝试开始使用Xcode8.3(不支持此新版本的iOS)开发一个应用程序,它将不起作用。有时,我还必须下载新版本的MacOS。看答案对于在设备上运行开发代码,Xcode对其可以使用的iOS的不同版本具有知识。如果您试图在带有新版本的iOS的iOS设备上构建和运行,则设置Xcode可以说它不知道该版本并且将不起作用。这使Apple可以在开发过程中更新Xcode与iOS设备的谈话方式,而无需较新的iOS版本才能向后兼容。

c++ - 所有 g++ 版本的 delete[] 可能存在错误或未定义此行为?

这个问题在这里已经有了答案:Whyisitundefinedbehaviortodelete[]anarrayofderivedobjectsviaabasepointer?(5个答案)关闭4年前。我有这段代码,它给了我3个或更多元素的段错误。我在vs和clang上测试并工作(循环结束和二进制结束没有错误)。我做错了什么?或者它是一个g++错误?如果我更改delete[]线到delete[]static_cast(a);它也适用于g++。但是,在实际情况下,我不知道真正的类型,所以我不能转换成任何东西。classA{public:virtual~A(){}virtualintx()=0

c++ - 在运行时读取 libstdc++ 版本

我的申请受到abug的影响在旧版本的libstdc++中以相当严重的数据丢失方式。如何使用-rpath或LD_LIBRARY_PATH选择正确的库版本的补救措施是已知的,但对于部署和构建中的更改并不可靠。在我自己被咬了不止一次之后,我想停止痛苦并引入运行时检查以获取足够新的libstdc++版本。如果部署未能使用正确的版本,我如何访问该版本以打印一条大警告消息。请注意,我需要gcc8附带的次要版本libstdc++.so.6.0.25a.k.a.GLIBCXX_3.4.25。 最佳答案 这是一个linux程序,它简单地列出了它拥有的