小编Ben*_*Ben的帖子

C++对象应该始终处于有效状态吗?

无论何时构造一个对象,构造函数是否应始终将其置于"初始化"状态?

例如,如果一个Image类有两个构造函数,其中一个采用文件路径字符串,另一个不采用参数,那么后者是否将图像对象置于无效状态是不好的做法?

假设编写类来处理这两种状态.

我问这个是因为我觉得在很多情况下几乎都需要一个默认的构造.特别是当一个对象是一个类的成员并且你想在该类的构造函数中初始化它时.

编辑:我知道成员初始化列表.我发现了一些情况,我想在它所持有的类的构造函数中构造对象,而不是之前.虽然,我知道这可能比任何其他选择更危险.

c++ oop

14
推荐指数
1
解决办法
1760
查看次数

无法调用std :: max,因为minwindef.h定义了"max"

我怎么去实际调用std :: max?代码将无法在visual studio 2013中编译,因为它将"max"作为宏.

std::max( ... );
Run Code Online (Sandbox Code Playgroud)

预期"std ::"之后的标识符.

c++ macros std

11
推荐指数
1
解决办法
6453
查看次数

Visual Studio Code 未在 Javascript 中执行错误检查

我尝试按照这些说明操作:

https://code.visualstudio.com/Docs/runtimes/nodejs

我根本没有得到绿色/红色的摆动线。我有什么遗漏的吗?

您还可以在此视频中看到同样的事情:

https://youtu.be/sE8_bTEBlFg?t=1m37s

据我所知,他们正在运行默认编辑器。我尝试使用 npm 安装 types 和 typescript。我已经按照该教程获取了 Node.js 的 Javascript 智能感知,但我无法获取错误/警告检查或 Node.js 模块的任何类型信息。

是否应该将类型文件安装到某个位置,以便使它们对于您在 VS Code 中创建的每个 JS 项目都是全局的?

javascript node.js visual-studio-code

7
推荐指数
1
解决办法
1万
查看次数

QOpenGLFunctions缺少重要的OpenGL函数

QOpenGLFunctions似乎缺少重要的函数,如glInvalidateFramebuffer和glMapBuffer.据我所知,QOpenGLFunctions加载了桌面OpenGL函数和ES函数的交集.如果是这样的话,为什么这两个功能不存在呢?从我可以告诉glMapBuffer两者.

我是否误解了QOpenGLFunctions,或者它们实际上是否缺少功能(不太可能)?

c++ opengl qt qtgui qt5

5
推荐指数
2
解决办法
2547
查看次数

C和C++ .lib文件是否可移植?

假设编译的代码实际上是可移植的(只使用标准库或其他东西),我是否可以.lib在多个平台上使用相同的项目,或者它们只能在编译的平台上运行?

我正在将我的C++项目从Windows移植到Linux,我使用了一些第三方库,包括openAL,FreeType和FreeImage,我想知道是否必须获取/重新编译新的库文件.

c c++ portability

3
推荐指数
1
解决办法
327
查看次数

win32程序应该始终是多线程的

现在我正在编写一个win32/opengl应用程序,每个窗口有2个线程.一个线程处理opengl绘图,另一个处理windows消息事件.我的问题是,我应该只为所有Windows消息使用1个线程吗?这会导致窗户偶尔没有响应等问题吗?

我正在使用多个Windows消息循环,所有这些都在不同的线程上.在我看来,消息循环是为1个线程设计的,并且在进程中只有一个外观.它是否正确?

c++ opengl winapi multithreading

2
推荐指数
1
解决办法
207
查看次数

通过复制将opengl对象包装到c ++类中

这通常是怎么做的?

例如,您可能有一个纹理类.这当然会包含GLuint id,也可能包含宽度和高度等其他字段.当出于某种原因需要复制对象时,需要用户定义的复制构造函数.

现在,在opengl纹理的情况下,可以将其复制到另一个纹理对象.但是着色器程序或FBO呢?这些不容易复制.人们通常如何做到这一点?它们应该被引用计数吗?是否应禁用所有对象的复制?是否应对所有无法复制的对象禁用复制?

最好的方法是什么?提前感谢您的任何答案.

c++ opengl copy-constructor

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

System.Action是否对方法的所有者保持弱引用?

是否使用了弱引用或将无法删除对System.Action的所有引用,因为此引用保持它正在调用的方法的所有者?

c# delegates

0
推荐指数
1
解决办法
386
查看次数