Bog*_*ier 2 c++ class return-value
我们假设我们有:
Class Foo{
int x,y;
int setFoo();
}
int Foo::setFoo(){
return x,y;
}
Run Code Online (Sandbox Code Playgroud)
我想要实现的只是形成我的get函数来返回多个值.我怎样才能做到这一点?
Luc*_*ore 10
C++不支持多个返回值.
您可以通过参数返回或创建辅助结构:
class Foo{
int x,y;
void setFoo(int& retX, int& retY);
};
void Foo::setFoo(int& retX, int& retY){
retX = x;
retY = y;
}
Run Code Online (Sandbox Code Playgroud)
要么
struct MyPair
{
int x;
int y;
};
class Foo{
int x,y;
MyPair setFoo();
};
MyPair Foo::setFoo(){
MyPair ret;
ret.x = x;
ret.y = y;
return ret;
}
Run Code Online (Sandbox Code Playgroud)
另外,你的方法不应该被调用getFoo吗?只是在说...
编辑:
你可能想要的:
class Foo{
int x,y;
int getX() { return x; }
int getY() { return y; }
};
Run Code Online (Sandbox Code Playgroud)
您可以拥有参考参数.
void Foo::setFoo(int &x, int &y){
x = 1; y =27 ;
}
Run Code Online (Sandbox Code Playgroud)