我最近遇到了一个与下一个类似的错误:doublegetSomeValue(){return4.0;}...std::stringstr;str=getSomeValue();正如您在此处看到的,很容易发现问题,但在getSomeValue()与调用代码不在同一个文件中的大型代码库中,可能很难发现此问题double到std::string静默转换。GCC可以使用-Wall-Wextra-Werror很好地编译此代码(此处的示例输出,我不知道使用了哪些警告标志:http://ideone.com/BTXBFk)。如何强制GCC对这些危险的隐式转换发出警告?我尝试了-Wconversion,