クラスは、通常のデータ型と似ていますが、通常のデータ型とは異なるデータ型と見なすことができます。クラス このデータ型は、メンバー変数とメンバー関数を含むコレクションです。
通常の変数と同様に、クラスのメンバー変数にもデータ型と名前があり、固定長のメモリを占有します。ただし、クラスを定義するときにメンバー変数に値を割り当てることはできません。クラスは単なるデータ型またはテンプレートであり、それ自体はメモリ スペースを占有せず、変数の値を保存するにはメモリが必要だからです。
クラスのメンバ関数は, 通常の関数と同じで, 戻り値とパラメータリストを持ちます. 一般の関数との違いは, メンバ関数はクラスのメンバであり, クラス本体に現れます.アクションの範囲はクラスによって決定され、通常の関数は独立しており、その範囲はグローバルであるか、特定の名前空間に配置されています。
前のセクションでは、例の Student クラスの定義を次のように示しました。
class Student{
public:
//成员变量
char *name;
int age;
float score;
//成员函数
void say(){
cout<<name<<"的年龄是"<<age<<",成绩是"<<score<<endl;
}
};
このコードは、クラス本体でメンバー関数を定義します。次の図に示すように、関数をクラス本体でのみ宣言し、関数定義をクラス本体の外に置くこともできます。
class Student{
public:
//成员变量
char *name;
int age;
float score;
//成员函数
void say(); //函数声明
};
//函数定义
void Student::say(){