当没有从函数显式返回值时,如何强制编译器错误

时间:2013-02-11 10:49:04

标签: c++ gcc

我犯的一个最常见的错误是我忘记从方法/函数返回结果,并且编译器不会抱怨。

如果没有返回结果,如何让GCC引发编译错误? (这些通常是微不足道的情况,方法中没有返回语句)

3 个答案:

答案 0 :(得分:5)

使用-Wreturn-type(我建议至少-Wall,也许-Wextra)。当您不返回值时,它会发出警告;您可以使用-Werror将其变为错误。

答案 1 :(得分:4)

使用-Wall -Werror标志进行编译。这将产生错误:

  

错误:函数返回non-void

时没有return语句

-Wall本身只会产生警告。

我建议也使用-Wextra进行编译。

答案 2 :(得分:1)

g++ -Werror main.cpp -o main警告错误!和-Wall也有帮助