在 C++ 中访问类的数据成员
原文:https://www.studytonight.com/cpp/accessing-data-members.php
访问数据成员仅取决于该数据成员的访问控制。如果它是公共的,那么使用直接成员访问(.)
操作符和该类的对象可以很容易地访问数据成员。
如果数据成员被定义为私有或受保护的,那么我们就不能直接访问数据变量。然后我们必须创建特殊的公共成员函数来访问、使用或初始化私有和受保护的数据成员。这些成员函数也被称为访问器和变异器方法或获取器和设置器函数。
访问公共数据成员
下面是一个示例,向您展示如何使用点()初始化和使用公共数据成员。)运算符和类的相应对象。
class Student
{
public:
int rollno;
string name;
};
int main()
{
Student A;
Student B;
// setting values for A object
A.rollno=1;
A.name="Adam";
// setting values for B object
B.rollno=2;
B.name="Bella";
cout <
甲的名字和数字是:亚当-1,乙的名字和数字是:贝拉-2
访问私有数据成员
要访问、使用和初始化私有数据成员,您需要创建 getter 和 setter 函数,以获取和设置数据成员的值。
setter 函数将设置作为参数传递给私有数据成员的值,getter 函数将返回要使用的私有数据成员的值。getter 和 setter 函数都必须定义为公共的。
例:
class Student
{
private: // private data member
int rollno;
public:
// public function to get value of rollno - getter
int getRollno()
{
return rollno;
}
// public function to set value for rollno - setter
void setRollno(int i)
{
rollno=i;
}
};
int main()
{
Student A;
A.rollono=1; //Compile time error
cout<< A.rollno; //Compile time error
A.setRollno(1); //Rollno initialized to 1
cout<< A.getRollno(); //Output will be 1
}
这就是我们如何使用 getter 和 setter 方法访问和使用任何类的私有数据成员。我们将在后面详细讨论这个问题。
访问受保护的数据成员
受保护的数据成员,可以直接使用点(。)运算符在当前类的子类中,对于非子类,我们将必须遵循与访问私有数据成员相同的步骤。