我为什么要在C ++中使用参数-std = c ++ 14,-Wall,-Wextra,-Werror,-pedantic

时间:2018-04-24 11:42:22

标签: c++ parameters

我刚刚开始学习C ++,我无法弄清楚这些参数是做什么的。 我猜-pedantic用于控制像限制和-std = C ++ 14告诉我们特定的C ++版本。 有人可以帮忙吗?

2 个答案:

答案 0 :(得分:2)

-std=c++14告诉编译器使用特定版本的C ++标准。参见例如this Wikipedia article about C++14

其他标志是关于编译器启用更多警告,因此它可能会告诉您代码是否有问题。 -Werror标志告诉编译器将所有警告变为错误。

另请注意,所有这些标志都特定于一个或几个编译器,它们不是所有编译器的通用C ++选项"。

答案 1 :(得分:0)

-std = c ++ 14将告诉编译器使用特定的14版C ++标准。

要使用最新版本,您可以尝试-std = c ++ 17。

-Wall警告所有人。它几乎可以打开所有警告,它们不是错误而是警告。

-Wextra打开一些额外的标志以显示更多警告。

-pedantic将警告一些不符合代码的部分。