gpt4 book ai didi

c++ - 这段 C++ 代码如何处理不寻常的单个 bool 语句?

转载 作者:太空宇宙 更新时间:2023-11-04 15:34:03 25 4
gpt4 key购买 nike

此代码为何以及如何工作?

#include <iostream>

using namespace std;

void nothing()
{
false;
}

int main()
{
cout << "Working" << endl;
nothing();
cout << "It worked!" << endl;
}

如您所见,函数 nothing() 的函数定义中只有一条语句 false; ,但它仍然编译并运行良好,做没有什么。如何以及为什么这可能?我在这里遗漏了什么吗?

最佳答案

false;

是 C++ 中的有效语句。它没有做任何有用的事情,但它仍然有效。大多数编译器可能会从他们为该函数创建的目标代码中删除该行。

一些具有正确编译器标志的编译器会让您知道该语句无效。使用 g++ --Wall,我得到:

socc.cc: In function ‘void nothing()’:
socc.cc:3:9: warning: statement has no effect [-Wunused-value]
false;

关于c++ - 这段 C++ 代码如何处理不寻常的单个 bool 语句?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40050110/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com