面向对象(二)
上次我们学习了面向对象,“类”的创建及公有属性的定义
公有属性定义的单词是:public
公有属性表示内部所定义的成员对程序所有的部分可见,这里的成员包括:数据成员、成员函数以及类型
也就是说,无论是程序的什么部分,都可以直接访问、修改这些类的对象的成员
这就意味谁都可以修改类对象里关键的数据信息,非常不安全
本次我们就来看一看“类”里面私有属性的定义
私有属性定义的单词是:private
私有属性修饰成员时表示该成员仅在该类内可见,类外无法对这个成员进行访问
常见的私有成员包括大部分的变量、一些不需要类的使用者关注的用于具体运算过程的函数
class Student{
private:
int id;
int age;
public:
int getID(){return id;}
int getAge(){return age;}
void setID(int newID);
void setAge(int newAge);
};
在上述代码中我们定义了两个私有成员:id、age;
接着定义了两个公有成员:steID、setAge
同时申明了两个函数:void setID(int newID);
void setAge(int newAge);
下面我们在类名后用作用域运算符"::"结合函数名的方式来指定类的函数并进行定义:
void Student::setID(int newID){id=newID;}
void Student::setAge(int newAge){age=newAge<100?newAge:99;}
接着在主函数中调用上面的两个函数,将1和16分别赋给id和age
因为age为年龄,所以赋值时我们加上了一个条件语句:{age=newAge<100?newAge:99;}
判断输入的年龄的值是否大于100,如果小于100将原值赋予age,如果大于等于100将99赋予age
接着输出时将id和age的值从私有成员中导出
int main(){
Student tom;
tom.setID(1);tom.setAge(16);
cout<<tom.getID()<<" "<<tom.getAge();
return 0;
}

浙公网安备 33010602011771号