ROOTStudy

水曜日, 3月 28, 2007

C++でクラスを宣言しCのように関数を使いたい場合

クラスヘッダをインクルードして、
::で直接呼び出す方法が便利。
ただし staticで宣言すること。

(a.hファイル内)
class a{
public:
static char write();
a();//コンストラクタ
~a();//デストラクタ
};

(a.cpp ファイル内)
#include"a.h"

char write(){
return 'a';
}

(main.cppファイル内)
#include "a.h"
main(){
char c;
c = a::write();
}

もしオブジェクトを作る場合は
#include "a.h"
main(){
char c;
a aobj;//変数型
c = aobj.write();

}

オブジェクトを動的に生成する場合は
"include "a.h"
main(){
char c;
a *aobj = new a();
c = aobj->write();
delete aonj;
}//new とdeleteが入るので面倒