这些警告不应该是带有 g++ 的吗? -墙?

发布于 2024-09-26 06:22:35 字数 211 浏览 5 评论 0原文

我只是好奇以下代码是否会导致 g++ 编译器发出警告:

// Snip #1
bool x = 0;
x++;

// Snip #2
switch (x) {
default:
    printf("hi\n");
}

问题是这样的语句存在于我处理的遗留代码中:-|,我想这些应该有一些警告?

我有 g++-4.4.3c

I was just curious if the following code should result in warning or not by g++ compiler:

// Snip #1
bool x = 0;
x++;

// Snip #2
switch (x) {
default:
    printf("hi\n");
}

The problem is such statements exist in a legacy code i work upon :-|, I guess there should be some warnings for these?

I have g++-4.4.3c

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

束缚m 2024-10-03 06:22:35

递增 bool 是一个已弃用的函数,但它仍然有效并达到了预期的结果,因此不应出现警告,这样做是不好的做法。

Incrementing a bool is a deprecated function, yet it is still valid and achieves the desired result, therefore a warning should not appear, it is just bad practice to do so.

丘比特射中我 2024-10-03 06:22:35

对于 gcc,-Wall 实际上并不会打开所有警告。手册页将涵盖您的所有选项,但要真正彻底,请使用“-Wall -Weff-c++ -pedantic -Werror”。

With gcc, -Wall does not actually turn on all warnings. The man page will cover all your options, but to be really thorough, use "-Wall -Weff-c++ -pedantic -Werror".

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文