gpt4 book ai didi

c++ - 定义中变量的自赋值

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:47:08 25 4
gpt4 key购买 nike

下面的 C++ 程序编译得很好(g++ 5.4 至少在使用 -Wall 调用时给出警告):

int main(int argc, char *argv[])
{
int i = i; // !
return 0;
}

甚至像

int& p = p;

被编译器吞噬了。

现在我的问题是:为什么这样的初始化是合法的?是否有任何实际用例,或者它只是语言一般设计的结果?

最佳答案

这是名称在声明后立即在范围内的规则的副作用。没有必要为了防止编写明显无意义的代码而使这个简单的规则复杂化。

关于c++ - 定义中变量的自赋值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44294121/

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