关于在全局调用函数是否合法?
#include <iostream>
int add(int a, int b)
{
std::cout << a+b<<std::endl;
return (a+b);
}
int result1 = add(4, 2);
int main(){
int result = add(1, 2);
return 0;
}
全局位置的int result1 = add(4, 2);这句话是可以执行通过的,
而如果改为add(4, 2);就会报错:error: expected constructor, destructor, or type conversion before ‘(’ token
这是为什么呢?
本文探讨了在C++中全局位置调用函数的合法性问题。分析了为何在全局位置直接调用函数会报错,而在定义变量时初始化则可行的现象,并解释了其背后的语法原因。

758

被折叠的 条评论
为什么被折叠?



