== 見落としがちな罠 == '''暗黙の型変換 double → int''' for(i=0, sum=0; i<10; i++) sum += 1/10; cout << sum [結果] 0 '''名前空間''' 本来は解決演算子 std:: がいるもの↓ cout, cin string, vector, list, ... などSTL系 '''セミコロンの有無''' 中括弧の後にセミコロン }; がくるもの ''関数のプロトタイプ宣言'' ''クラス宣言'' ''do-while文'' == 厄介なエラーの元凶 == '''「一つの宣言に複数の型が定義されています」''' '''"expected unqualified-id before 'using'"''' 単に class 宣言の最後にセミコロンが無いだけ > }; '''やたらモジュール化''' '''スコープが違ってる''' gsl_vector は元々がポインタなので,関数に渡した先で新たにベクトルを取得するときは,ポインタのポインタを渡すことになる。 '''ファイルを開くときは,純粋な文字列を渡す''' string ではだめ。→ '''.c_str()'''を使う。 特に ostringstream os を用いているときは,'''os.str().c_str()'''となる。 '''はじめからないものをデストラクタに削除させる''' コンストラクタで NULL 初期化でもしておかないと、 結局生成せずに終了したときに謎のセグメンテーションエラーになる。