【发布时间】:2012-11-26 09:01:47
【问题描述】:
假设我有这个功能:
void func() {}
当我使用某些参数(例如 func(132))调用 func 时,C++ 编译器会产生错误,而 C 编译器不会。
在这种情况下,两个编译器有什么区别? C++ 产生此错误有什么优点/缺点?
【问题讨论】:
-
最好不要在没有
-Wall标志的情况下使用 gcc 进行编译。 -
@MaximYegorushkin:
-Wall不会抓住这个,因为它不包括-Wstrict-prototypes。我使用-Wall -Wextra -Wpointer-arith -Wwrite-strings -Wmissing-prototypes -Wstrict-prototypes,但每个人都有自己喜欢的一组警告标志。