@陈梓瀚(vczh)
>>显然“所有流行编译器版本”是一个你只需要下载完写了从vcproj到的makefile生成器以后就自动完成的事情,一劳永逸也,想做当然能做,而且随时更新。
这只是构建脚本而已。 我说的是不同编译器产生出的二进制代码的兼容性。
你能用msvc链接到一个mingw生成的二进制库吗?
你能用msvc链接到前一个crt版本吗?
>>运行库版本一律使用static链接,因此可以跟你的编译器版本捆绑在一起。
看吧, 你又"一律", "一定" 什么的了。
这是C++语言本身的问题。 C++的特性太复杂, 而且是一门开放的语言, 所以会有很多二进制上不兼容的特性。
而且C++这门语言本身就会促使开发者使用复杂的设计。
>> 一个程序不可能也不应该同时使用N套平行的GUI库(嵌套关系除外)
你没见过而已。 确实有这样的东西存在。 MFC+WTL+还有一个什么忘记了。
当然, 那东西确实丑陋。
不过已经是这样子了, 推倒重来的代价公司受不起, 用户也受不起。
>>main之前的任何异常都不要捕捉,任由崩溃。想log就捕捉了log,log完还是要throw;以便崩溃
再次强调, "需要全局的依赖" 和 "处理全局初始化错误" 是两回事。
回复 更多评论