为什么在有的Qt程序里必须要链接qtmain.lib?
答案是:如果只是生成控制台程序,是不需要的,link flags里有/SUBSYSTEM:CONSOLE就表明这是一个控制台程序,这样生成的程序还是可以弹出窗口或对话框的界面,但是同时也有个黑窗口即控制台,如果为了查看吐出来的日志,可以这么做。
如果希望去掉这个控制台黑窗口,就要使用/SUBSYSTEM:WINDOWS选项,可以在VC的项目属性页里设置。这时候就需要链接qtmain.lib,不然就会报错:MSVCRT.lib(exe_winmain.obj) : error LNK2001: 无法解析的外部符号 _WinMain@16