KAIHATSUGIKEN GROUP

C++ PROGRAMMING LANGUAGE





********************************************************************************
22 プライベートデータとパブリックデータ
プログラムからのクラスメンバーに対する参照を制御するために、C++ではメンバーを
パブリック(公開)プライベート(非公開)に定義することが出来ます。
*******************************************
#include <iostream.h>
#include <string.h>

class employee {				
	public:
	int assign_values(char *, long, float);
	void show_employee(void);
	int change_salary(float);
	long get_id(void);

	private:
	char name[64];
	long employe_id;
	float salary;
	};

int employee::assign_values(char *emp_name,long emp_id,
	float emp_salary)
	{
	strcpy(name,emp_name);
	employee_id = emp_id;
	
	if (emp_salary < 50000.0)
		{
		salary = emp_salary;
		return(0);
		}
	else
		return(-1);
	}

long employee::get_id(void)
	{
	return(emplyee_id);
	}

void main(void)							//ここから始まる
	{
	employee worker;		//employeeオブジェクトworkerを宣言

	if (worker.assign_values("Happy Jamsa", 101, 10101.0) ==0)
		{		//関数assign_valuesの引き数に値を渡す
		cout << "Emplyee values successfully assigned" << endl;
		worker.show_employee();		//show_employeeを呼び出し	
		}

	else 	
		cout << "Invalid salary specified" << endl;
	}
***********************
#include <iostream.h>
#include <string.h>

class employee {
	public:						//pubulicラベルを使用する
	int assign_values(char *, long, float);			//値を渡される

	void show_employee(void);			//クラスの中で関数を宣言
	int change_salary(float);
	long get_id(void);
	private:			//privateにはドット演算子を使っても
	char name[64];			//参照することは出来ない
	long employe_id;
	float salary;
	};

int employee::assign_values(char *emp_name,long emp_id,	float emp_salary)
	{					//assign_valuesの値を代入
	strcpy(name, emp_name)			//Happy jamsa文字列を読み込み
	employee_id = emp_id;			//101を代入			
	
	if (emp_salary < 50000.0)		//emp_salaryを代入10101.0
		{
		salary = emp_salary;		//emp_salaryをsalaryに代入
		return(0);					//適正な値
		}
	else			
		return(-1);					//不適切な値
	}

long employee::get_id(void)
	{
	return(emplyee_id);
	}

void main(void)
	{
	employee worker;

	if (worker.assign_values("Happy Jamsa", 101, 10101.0) ==0)
		{
		cout << "Emplyee values successfully assigned" << endl;
		worker.show_employee();
		}

	else 	
		cout << "Invalid salary specified" << endl;
	}
***********************