类的声明:
class 类名
{
private:
私有的数据和成员函数;
public:
公用的数据和成员函数;
};
举个例子(如何声明类):
class Student //Student是类的类型
{
private: //用来声明成员的访问属性,private下的类外不能调用
int num;
string name;
char sex;
public:
void display() //用来声明成员的访问属性,可以被类的作用域内的其他函数引用。
{
cout <<"num: " << num << endl;
cout <<"name: " << name << endl;
cout <<"sex: " << sex << endl;
}
};
举个例子:(定义对象)
Student stud1, stud2; //定义对象方式1:stud1, stud2为对象
class Student stud3, stud4; //定义对象方式2:stud3, stud4为对象
声明类型的同时定义对象:
class Student //Student是类的类型
{
private: //用来声明成员的访问属性,private下的类外不能调用
int num;
string name;
char sex;
public:
void display() //用来声明成员的访问属性,可以被类的作用域内的其他函数引用。
{
cout <<"num: " << num << endl;
cout <<"name: " << name << endl;
cout <<"sex: " << sex << endl;
}
}stud1, stud2;
不出现类名直接定义对象:
class //Student是类的类型
{
private: //用来声明成员的访问属性,private下的类外不能调用
int num;
string name;
char sex;
public:
void display() //用来声明成员的访问属性,可以被类的作用域内的其他函数引用。
{
cout <<"num: " << num << endl;
cout <<"name: " << name << endl;
cout <<"sex: " << sex << endl;
}
}stud1, stud2;
注意:类的成员函数一般在类内声明,在类外定义,但是类外定义的函数需要在函数名前面加上类名,例如:
class Student //Student是类的类型
{
private: //用来声明成员的访问属性,private下的类外不能调用
int num;
string name;
char sex;
public:
void display(); //用来声明成员的访问属性,可以被类的作用域内的其他函数引用。
}stud1, stud2;
void Student:: display()
{
cout << "num: " << num << endl;
}
访问对象中的成员:
1.通过成员运算符
stud1.num = 1001;
stud1.display();
2.通过指向对象的指针
Stu s, *p;
p = &s;
cout << p->num << endl; //p->num 和(*p).num 和s.num等价
3.通过对象的引用变量
stu &s1 = s;
cout << s.num << endl; //s.num 和p->num 和(*p).num 和s.num等价