草庐IT

vs-cmake-examples

全部标签

c++ - 不可复制的对象和值初始化 : g++ vs msvc

我看到g++和msvc之间围绕值初始化不可复制对象的一些不同行为。考虑一个不可复制的类:classnoncopyable_base{public:noncopyable_base(){}private:noncopyable_base(constnoncopyable_base&);noncopyable_base&operator=(constnoncopyable_base&);};classnoncopyable:privatenoncopyable_base{public:noncopyable():x_(0){}noncopyable(intx):x_(x){}private

C++ 实例 VS 指针 VS 引用

我有一个程序可以创建我自己的类的许多实例。然后我操作它们:读取、更改、将它们传递给一些第三方方法等。一共有三个问题。我存储的是实例vector还是指针vector?为什么?如果我不想更改实例,我是否将实例或指向它的指针传递给函数?为什么?如果我确实想要更改一个实例,我是传递指针还是引用?为什么?提前致谢!类示例:classPlayer{public:staticconstcharwidth=35;staticconstcharheight=5;staticconstcharspeed=15;intsocketFD;floatxMin;floatxMax;charstatus;float

c++ - 在 VS2008 中使用 Qt 时,IntelliSense 不能正常工作

我在VisualStudio2008中使用Qt4.4.2。当我编写代码时,IntelliSense似乎死了-它没有显示Qt对象中的任何方法或数据成员,例如QPushButton,没有看到QObject::connect静态方法等。这是典型情况还是我在安装库时做错了什么? 最佳答案 最有可能的非标准扩展,如publicslots:等Qt站点上已有常见问题解答:IntellisensedoesnotworkformyQtapplication.What'swrong? 关于c++-在VS20

c++ - 使用 CMake 编译其他外部库(没有 CMakeLists.txt)

简而言之——当二进制文件/库仅提供一个makefile时,是否可以使用CMake从项目中构建外部二进制文件/库?所以你有自己的项目,源文件树中的一堆CMakeLists.txt和这个带有源文件的外部库。你的资源依赖于这个库,一些二进制文件/库想要链接到它。如果这个外部库只有一个makefile或VisualStudio项目文件而没有给定的CMakeLists.txt,将如何编译它?是否有机会从CMake中调用configure/make?或者在Windows下使用VS运行批编译?还是别的?感谢您在这方面的帮助... 最佳答案 听起来

c++ - vs2010 c++ 通过调试查看指针内容

我在Vs2010c++中使用二维数组。我从一维指针开始,并按如下方式使用[]操作:classCMatrix{voidclear();public:intnRows;intnCols;short*MyMat;CMatrix();CMatrix(intr,intc);~CMatrix(void);voidSetMatrix(intr,intc);short*operator[](constintrow){returnMyMat+(row*nCols);}};我不介意改成二维指针。但是我的问题是调试。因为我使用的是指针,所以看不到数组内容。还有其他选择吗?我不想使用vector。

c++ - C++ Small vs All Caps数据类型

为什么在C++(MSVS)中定义了全部大写的数据类型(并且大多数都相同)?这些完全相同。为什么要定义所有大写版本?double和typedefdoubleDOUBLEchar和typedefcharCHARbool和BOOL(typedefintBOOL),这里所有大写字母和所有大写字母都表示bool状态,为什么在后者中使用int?通过这些额外的数据类型获得了什么额外的能力? 最佳答案 ALLCAPStypedefs在Windows编程的第一天(1.0及更低版本)开始。例如,当时没有bool类型。WindowsAPI和header是

c++ - 遍历链表 : while(ptr! =NULL) vs while(ptr->next!=NULL)?

定义一个内存单元structnode{intitem;node*next;};并假设ptr是指向链表,放while(ptr!=NULL)有区别吗对比while(ptr->next!=NULL)遍历列表直到到达空指针? 最佳答案 while(ptr->next!=NULL)不会循环遍历您的最后一个节点。当您到达最后一个节点时,ptr->next将为null,并且它将跳出while循环 关于c++-遍历链表:while(ptr!=NULL)vswhile(ptr->next!=NULL)?,

c++ - 如何读取这些表达式 : *&pointer VS &*pointer

如果我有:intj=8;int*pointer=&j;那么如果我这样做:&*pointer==*&pointer返回1(true)。但是我对第二个表达有疑问:&*pointer返回指针指向的地址(首先计算*然后&)*&pointer返回指针地址,然后它指向什么......但这是变量而不是地址。所以这是我的疑问...... 最佳答案 &*pointer取消引用指针(下图中的1.)为您提供int对象(2.),然后获取地址该对象,当然与指针(1.)具有相同的值。┌─────────┐┌───┐│pointer┿━>│j│└────────

c++ - VS 代码调试 C++ Node 插件

我尝试在visualstudio代码中为使用GYP编译的C++Node-Addon设置调试。如果可能的话,我想单步执行源代码。我使用typescript作为我的服务器语言,并包含由gyp编译的“.node”文件。这工作正常,但我如何设置它,以便我不仅可以单步执行typescript代码,还可以单步执行C++代码?.cc文件的VSCode断点:我知道我可以使用gypnode-gyprebuild--debug编译调试版本,但我没有计划如何在vscode中使用它。 最佳答案 如果你使用Windows,这个VSCodelaunch.jso

c++ - 我可以在我的 cmake 代码中手动使用 CMake 的 cpp 文件依赖扫描器吗?

我正在尝试使用CMake添加一个自定义目标,它为每个给定的.cpp文件执行一个命令。仅当源文件本身或包含的源文件之一发生更改时,才应重新执行该命令。据我所知,要实现这一点,我需要一个所有包含文件的列表,并将它们添加到属于我的自定义目标的add_custom_command()调用的DEPENDS选项中。那么有没有内置的方法来获取包含文件的列表?我知道add_custom_command()函数的IMPLICIT_DEPENDS选项,但它只适用于Makefile生成器。我想让它适用于所有生成器。谢谢你的时间编辑:根据要求,我将发布一些cmake代码来展示我想要实现的目标。我想添加一个自定