是否可以传递编译器(例如,g++、clang等)标志或定义将禁用C++的某些“功能”作为质量控制的手段?
我希望在C++中禁用多重继承和许多其他东西,这些东西(我认为)弊大于利。
发布于 2014-08-19 16:57:38
一旦您选择C++作为您的语言,您就会得到C++作为您的语言。由于某些配置标志,编译器无法合法地开始拒绝合法的C++程序。
因此,一个明显的选择是不使用C++,而是选择一种提供您感兴趣的特性和安全考虑的语言。
如果你选择继续使用C++,那么请理解语言允许你对自己的脚开枪。这是故意的。
您可以做的是进行设计评审、代码评审,并使用静态代码检查器和编译器警告来捕捉开发各个阶段的各种问题。
https://stackoverflow.com/questions/25388274
复制相似问题