c++ - 类——获取函数——返回多个值

标签 c++ class return-value

假设我们有:

Class Foo{
    int x,y;

    int setFoo();
}

int Foo::setFoo(){
    return x,y;
}

我想要实现的是形成我的 get 函数以返回多个值。我该怎么做?

最佳答案

C++ 不支持多个返回值。

您可以通过参数返回或创建辅助结构:

class Foo{
    int x,y;

    void setFoo(int& retX, int& retY);
};

void Foo::setFoo(int& retX, int& retY){
    retX = x;
    retY = y;
}

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;
}

还有,你的方法不应该叫做getFoo吗?就说...

编辑:

你可能想要的:

class Foo{
    int x,y;
    int getX() { return x; }
    int getY() { return y; }
};

关于c++ - 类——获取函数——返回多个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10130755/

相关文章:

c++将基类转换为派生类困惑

javascript - 为什么对象实例化后定义的属性不是自己的属性

c# - 将图像添加到列表框

c++ - C++ 中是否存在内存泄漏 "undefined behavior"类问题?

c++ - 是否可以使用有条件选择的字符串文字来初始化字符数组?

c++ - (复制构造函数)作为参数传递给另一个对象的对象如何访问私有(private)成员?

c++ - 在 C++ 中创建带有结构的节点时出现段错误

C++ - 何时为使用但未分配的对象调用析构函数?

java - 使用get方法时不同的实例变量显示相同的值

c++ - 位域如何与字符类型一起使用?