C++のクラス-簡単な作り方だけ-
クラスの作り方(使い方)は、細かく分けると数種類あります。
今回紹介するのは、3つのファイルに分ける方法です。
私は、この方法を推奨します。
- メインのファイル
 - クラスのファイル
 - クラスのヘッダファイル
 
用意するファイル
- メインのファイル
 - クラスのファイル
 - クラスのヘッダファイル
 
以上の3つのファイルに分けて、クラスを扱います。
ここでは、メインのファイルは、main.cpp
クラスのファイルは、Source.cpp
クラスのヘッダファイルは、Source.h
そして、作るクラスは、MikanBoxというクラスです。
メインのファイル
メインのファイル
main.cppでは、クラスが定義してあるヘッダファイルSource.hをインクルードします。
Source.hは、自分で作ったものなので、””で囲みます。
ソースコード
#include<stdio.h>
#include<iostream>
#include "Source.h"
int main() {
	int i;
	//オブジェクト生成(コンストラクタ)
	MikanBox myMikanBox;
	myMikanBox.Add(5);
	myMikanBox.Del(2);
	int c = myMikanBox.GetTotal();
	
	std::cout << c;
	getchar(); //入力待ち
	}
}
クラスのファイル
クラスのファイル
Source.cppには、メンバ関数の中身を定義を書きます。
メンバ関数は、ヘッダファイルのクラス定義されているので、ヘッダファイルSource.hをインクルードします。
メンバ関数の定義は、
//コンストラクタ
クラス名::クラス名(){
    初期化
}
//メンバ関数
型 クラス名::メンバ関数名(引数){
    処理
}
ソースコード
#include "MikanBox.h"
//インラインでヘッダファイルにメソッドを定義
//コンストラクタに戻り値はない
MikanBox::MikanBox() {
	total = 0;
}
void MikanBox::Add(int addmikan) {
	total += addmikan;
}
void MikanBox::Del(int delmikan) {
	total -= delmikan;
	if (total < 0) {
		Empty();
	}
}
void MikanBox::Empty() {
	total = 0;
}
ヘッダファイル
ヘッダファイル
Source.cppには、クラスの定義を書きます。
ソースコード
#ifndef _SOURCE_H_
#define _SOURCE_H_
//クラスの定義
class MikanBox {
public:
	//コンストラクタ
	MikanBox();
	//メンバ関数(メソッド)の定義
	void Add(int addmikan);
	void Del(int delmikan);
	void Empty();
        //インライン関数<-クラス定義内でメンバ関数を定義する
	int GetTotal() {
		return total;
	}
private:
	int total;
};
#endif
まとめ
C++のクラスは、main.cppとclass.cpp、class.hの3つに分けて、管理する。
1つのファイルの行数が少なくなり、系統のものがファイルでまとめられるので、見やすく、管理しやすくなるのではないかと感じる。
        
        
        
        
        
        
        
        
        
        
        
        

