C++可不可以传递结构体成员的引用
时间: 2023-11-08 17:18:57 浏览: 63
可以传递结构体成员的引用。假设有一个名为`Person`的结构体,其中包含两个成员变量`name`和`age`,代码如下:
```
#include <string>
struct Person {
std::string name;
int age;
};
```
如果要在函数中修改`Person`对象的`age`成员变量,可以将该成员变量的引用作为函数参数,如下所示:
```
void set_age(int& age_ref) {
age_ref = 30;
}
int main() {
Person p;
p.name = "Alice";
p.age = 25;
set_age(p.age);
return 0;
}
```
在上面的例子中,我们定义了一个函数`set_age()`,它接受一个`int&`类型的参数`age_ref`,表示要修改的`age`成员变量的引用。在`main()`函数中,我们创建了一个`Person`对象`p`,并将其`age`成员变量的引用传递给`set_age()`函数。在`set_age()`函数中,我们将`age_ref`赋值为30,这将同时修改`p`对象的`age`成员变量。最终,`p.age`的值将变为30。
阅读全文