相关疑难解决方法(0)

当所有逗号运算符都不作为逗号运算符时?

如果你看到这段代码,

class A{
public:
    A(int a):var(a){}
    int var;
};

int f(A obj) {
    return obj.var;
}

int main() {
    //std::cout<<f(23);    // output: 23
    std::cout<<f(23, 23);  // error: too many arguments to function 'int f(A)'
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

f(23, 23) 不编译,因为逗号在此处充当分隔符而不是逗号运算符.

所有逗号都不能用作逗号运算符?或者相反?

c++ comma-operator

8
推荐指数
4
解决办法
694
查看次数

标签 统计

c++ ×1

comma-operator ×1