KAIHATSUGIKEN GROUP
********************************************************************************
21 クラス
**************
クラスはオブジェクト指向プログラミングのための最も重要なC++のツールです。
クラスとはあるオブジェクトのデータに相当するメンバーをグループ化するという
とても構造体に似たものであることを知って下さい。
またメソッドというのはそれらのデータに対する操作を行う関数であることも知って
おいて下さい。クラスを定義するにはクラスメイトクラスのデータメンバーそしてクラス
の関数(メソッド)を記述します。
ドット演算子を使ってクラスのデータメンバーへ値を代入することが出来ます。
プログラムからはドット演算子を使ってクラスのメンバー関数を呼び出します。
クラスによってデータとそのデータを操作する関数をグループ化できます。
*********************************************************************
#include <iostream.h>
#include <string.h>
class employee {
public:
char name[64];
long employee_id;
float salary;
void show_employee(void)
{
cout << "Name: " << name << endl;
cout << "Id: " << employee_id << endl;
cout << "Salary: " << salary << endl;
};
};
void main(void) //ここから始まる
{
employee worker, boss; //employeeオブジェクトworkerとbossを宣言
strcpy(worker.name, "John Doe");//ドット演算子を使ってメンバーに値を代入
worker.employee_id = 12345; //strcpyで文字列をコピーする
worker.salary = 2500;
strcpy(boss.name, "Happy Jamsa");
boss.employee_id = 101;
boss.salary = 101101.00;
worker.show_employee(); //関数show_employeeを呼び出し
boss.show_employee(); //関数show_employeeを呼び出し
}
****************
#include <iostream.h>
#include <string.h>
class employee { //class名employeeを生成
public: //publicはドット演算子でそのメンバーを参照できる
char name[64];
long employee_id;
float salary;
void show_employee(void)
{ //workerを出力した後bossを出力
cout << "Name: " << name << endl;
cout << "Id: " << employee_id << endl;
cout << "Salary: " << salary << endl;
};
};
void main(void)
{
employee worker, boss;
strcpy(worker.name, "John Doe");
worker.employee_id = 12345;
worker.salary = 2500;
strcpy(boss.name, "Happy Jamsa");
boss.employee_id = 101;
boss.salary = 101101.00;
worker.show_employee();
boss.show_employee();
}
*******************************
Name: John Doe
Id: 12345
Salary: 2500
Name: Happy Jamsa
Id: 101
Salary: 101101.00
************************************************
クラスの外での宣言
********************
#include <iostream.h>
#include <string.h>
class employee {
pubulic:
char name[64];
long employee_id;
float salary;
void show_employee(void);
};
void employee::show_employee(void) //クラスの外で関数を宣言している
{
cout << "Name: " << name << endl;
cout << "Id: " << employee_id << endl;
cout << "Salary: " << salary << endl;
};
void main(void) //ここから始まる
{
employee worker, boss; //employeeオブジェクトworkerとbossを宣言
strcpy(worker.name, "John Doe"); //ドット演算子を使って値を代入
worker.employee_id = 12345; //文字列をstrcpyを使ってコピー
worker.salary = 25000;
strcpy(boss.name, "Happy Jamsa");
boss.employee_id = 101;
boss.salary = 101101.00;
worker.show_employee(); //show_employeeを呼び出す
boss.show_employee();
}
********************
#include <iostream.h>
#include <string.h>
class employee { //class名employee
pubulic:
char name[64];
long employee_id;
float salary;
void show_employee(void); //クラスの中に関数プロトタイプを置く
};
void employee::show_employee(void) //クラスの外で宣言する関数は"::"をつける
{ //クラスの外で関数を定義することで混乱を防ぐ
cout << "Name: " << name << endl;
cout << "Id: " << employee_id << endl;
cout << "Salary: " << salary << endl;
};
void main(void)
{
employee worker, boss;
strcpy(worker.name, "John Doe");
worker.employee_id = 12345;
worker.salary = 25000;
strcpy(boss.name, "Happy Jamsa");
boss.employee_id = 101;
boss.salary = 101101.00;
worker.show_employee();
boss.show_employee();
}
********************