传递给函数参数的引用成员变量

时间:2015-03-10 03:31:43

标签: c++

是否可以将具有引用参数的函数传递给类的变量成员?

让我们说

class Foo
{
 int A;
 int B;
}

void foo(int& a)
{
    a++;
}

void main()
{
    Foo f;
    foo(f.A);
}

这可能吗?

1 个答案:

答案 0 :(得分:3)

是的,这是可能的,它完全符合您的预期。

但请注意,在现有代码中,ABprivate(默认情况下)。这意味着之外的任何内容都无法访问它们,任何原因(包括将它们用作引用)。

将它们声明为public

class Foo
{
public:
    int A;
    int B;
};

或将Foo更改为struct

struct Foo
{
    int A;
    int B;
};