-2
我想创建一个使用三元运算符的对象,但每一次,它只调用第一个。这是我简单的代码:初始化类使用三元运算符的对象错误
bool itTrue(int x, int y){
if(x>y)
return true;
return false;
}
class myClass {
public:
myClass(int x){
val=x;
}
myClass(int x, int y){
val=x*y;
}
val=0;
};
int main(){
aa=5;
bb=6;
myClass cc = isTrue(aa,bb) ? (aa,bb) : (bb,bb);
cout<<cc.val<<endl;
return 0;
}
一些如何使用Debuger,IsTrue运算函数被调用后,谁被调用构造函数是使用一个对象之一: myClass(int x)
但我想使用这两个参数,如何我打电话给另一个: myClass(int x, int y)
使用三元运算符?
你即将去知道逗号操作符。什么是“short”? – LogicStuff
提供一个合适的拷贝构造函数,然后写'myClass cc = isTrue(aa,bb)? myClass(aa,bb):myClass(bb,bb);' –
我应该忽略拷贝构造函数,只是像你说的那样写?或者我必须执行它? – raptor0102