小编Chr*_*rdt的帖子

最小的Qt可执行文件大小

现在Qt去了LGPL我倾向于再试一次.多年前我因某些原因决定反对,其中一个原因是可执行文件的大小(Windows上的Qt).我发现大约5MB的下限.Trolltech根据要求肯定了这一点,但告诉我,粒度将得到改善,这将导致更小的尺寸(取决于所需的元素).

事情本来可以改变.现在Qt中"hello world"(windows和console)的大小是多少?

这是关于静态链接.我认为qtCore和qtGui是必需的.

c++ windows qt

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

为什么WD Velociraptor没有加速我的VC++ - 编译显着?

这里有几个人建议切换到新的WD Velociraptor 10000rpm硬盘.杂志文章也赞扬了表演.我买了一个并将我的旧系统镜像到它.编译速度的提高有点令人失望:

  • 在我的旧三星驱动器(SATA,7200)上,编译时间为16:02.
  • 在Velociraptor上,构建需要15:23.

我有一台带1.5G内存的E6600.这是一个C++ - 包含1200个文件的项目.构建在Visual Studio 2005中完成.声学管理已关闭(无论如何都没有大的差别).

出了什么问题,或者这种适度加速真的是全部,我可以期待吗?

编辑: 有人建议增加RAM.我现在做了,并通过将RAM加倍到3GB获得了最小的增益(3-5%).

hardware performance compilation visual-c++

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

从函数返回后丢失RTTI信息

给定一个类和子类:

class Event {...}
class Note : public Event {...}
Run Code Online (Sandbox Code Playgroud)

注释被克隆并存储在函数f()中的指针中.类型信息保留在指针中,可以通过dynamic_cast恢复:

void f()
{
   pEvent = pNote->Clone();    // create a clone of a Note
   ASSERT(dynamic_cast<Note*>(pEvent));   // check the pointer, here it works
}
Run Code Online (Sandbox Code Playgroud)

现在,从f()返回后,类型信息丢失了:

f();
ASSERT(dynamic_cast<Note*>(pEvent));   // -> "Access violation - no RTTI-data"
Run Code Online (Sandbox Code Playgroud)

VS-debugger显示有效的指针值(未更改),但不显示派生类,而不是在f()-scope中.

从函数返回时,如何丢失指针的RTTI信息?

c++ dynamic-cast visual-studio-2005 rtti

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