Archive for the ‘C++’ Category

[C++] クラスの定義のときのエラーとか

新年明けましておめでとうございます!!
新年の目標をしっかり抱えて2011年も頑張っていこうと思います!

今年もよろしくお願いします。


とりあえず、C++でものすごく初歩的なことだと思うのですが、なんかつまずいたのでメモ。
Compornentsクラス達を作っているときに、

  • Sliderクラス
  • ToggleButtonクラス
を つくっていて、

全体の設定とかを Configクラス をつくってそこで一括管理しようと思ったのですが、
Slider.h ToggleButton.hConfig.hをインクルードするとエラーが出てしまっていました。。

ちょろっと調べたら、
http://okwave.jp/qa/q1298956.html
にありました。

#ifndef __CONFIG_H__
#define __CONFIG_H__

class Config 
{
public:
	Config();	
};

#endif __CONFIG_H__


でオッケーみたいです!
無事に解決で良かった良かった。



これも便利なのでメモ
#define _USE

#ifdef _USE
  // _USEが定義されている ときに実行される処理
#else
  // _USEが定義されていない ときに実行される処理
#endif



これでいちいちコメントアウトとかでわけとかないで、
#define _USE


を書くか書かないかで処理が切り替わってくれるので便利!




[C++] ファイル読み込んでゴニョゴニョ

openFrameworks使った作品作ってる上で、ローカルのテキストファイルからテキスト読み込んでゴニョゴニョっていうのを
やる事があったので、そんときの自分用メモ。

ほんとに一から調べていく感じで、下記のサイトにかなりお世話になりました。
http://www.sasaraan.net/program/cpp/cpp_file1.html
http://www.sasaraan.net/program/cpp/cpp_file2.html


ファイルを開いたり、閉じたり。

//ファイルの変数;
FILE *file;

//ファイルを開く:
file = fopen(" ファイルのパス " , " 読み書きのモード ");

//ファイルを閉じる;
fclose(file);




char型の文字列の文字数を取得できる。この書き方をもっと早く知って起きたかった、、
char c = " test ";
size_t  len = strlen( c );  //文字数を取得

cout << len << endl;

//出力 : 4




とりあえず今回やったやり方をメモ。
// buf[255] : char
// _print[255] : string 
// LINE_NUM : int
// file : FILE

while( fgets(buf, LINE_NUM, file ) )
{
	size_t len = strlen(buf);
	for (int i = 0; i < len; i++)
	{
		_print[i] = buf[i];				
	}
}