【发布时间】:2017-08-26 05:49:50
【问题描述】:
我是 C++ 新手,我在 C++ 中看到以下语法来初始化变量。
int(i)=1;
然后,我在 G++ 编译器中编译,编译器没有给出任何错误或警告。
那么,int(i)=1; 在 C 和 C++ 中是什么意思?
另外,我在 C 中进行了测试,我认为 C 编译器会出错,但它也可以正常工作。
【问题讨论】:
-
为什么要添加c标签? C 和 C++ 是非常不同的语言
-
@LưuVĩnhPhúc 因为它在 C 中也可以正常工作。
-
@Mahendra 尽管如此,在两种语言中工作的东西可能有非常不同的行为和原因。在这种情况下,这很好,但请记住,它们确实不同。
-
为什么会出现左值错误? i 是一个左值。
-
@Mahendra 这是一个非常不同的代码。 i 是左值, foo() 不是。关键的区别不是括号(嗯,有点。它们是函数调用的原因)。请查看左值是什么。
标签: c++ c initialization