STL
Standard Template Library.その名の通り標準のテンプレートライブラリ。
勉強しなきゃな、テンプレート。
boost
MFC
描画処理
あーーめんどくせぇ!
とりあえずメモだぁ!
動的メモリアロケーション
-動的と静的の違い
動的:プログラムの走行中にそのプログラムで使用するメモリの確保を行うこと
静的:プログラムのコンパイル時にデータ領域の確保を決定すること
例えば
for(int i=0; i<length; i++){
としたときのiのような宣言の仕方では
コンパイル時にどんなサイズのメモリ確保を行うかが決まっている
(ので、実行時に必要なメモリ確保ができる)のに対して
下の例では、new文を実行するまでメモリが確保されないってことかな?
-new, delete演算子(C++)
動的にメモリ領域を確保し、ポインタを用意してくれる。
例:
char *p = new char[100];
とすると、char型(1BYTE)のメモリ領域が100個用意されて
pointerでアクセスできるっていうことみたい。
delete忘れるとメモリリークdeath
ヘッダ
構造体や関数やクラスの宣言
(つまり型の指定)を書くためのもの。書くためだけのもの。
それ以外(関数の実装など)は書かない。書けるけど書かない。そういうもの。
-#pragma once
関数なりクラスなりの宣言、つまりheaderのincludeを2重に行わないためのもの。(重複定義のguarder)
#pragma
はコンパイラによって挙動が違うようだ(だので移植性が下がるようだ)けど
(やだったら#ifndefとかいっぱい書かなきゃいけないので)とりあえず.hには全部つけとくと吉。
-VC++でのヘッダファイルの追加
「既存の項目の追加」でヘッダファイルをぶち込んで#include"*.h"とやるとエラーになった。
参考ページ
- 「既存の項目の追加」では、ファイルをコピーして追加したるするわけではないようだ。
- VC++ディレクトリに、インクルードファイルをおいたディレクトリを追加するだけでも、認識されなかった。
(*.hファイルは開けるんだけんど、定義された構造体の定義をさんしょうできなかた(´・ω・`))
- [既存の項目の追加][VC++ディレクトリ]両方やるとできた。よーわからんぜよ。
クラス設計
の2種類があるそうな。
それぞれの例:
| 値オブジェクト |
日付・時間・お金・数量 |
| 参照オブジェクト |
人・iostream |
例えばメンバ変数が同じchar* m_nameであったとしても
Nameクラスだったら値オブジェクト。
Personクラスだったら参照オブジェクト。
それぞれ実装すべき関数や演算子が違うみたい。
まぁなんか応用的な難しい話。
最終更新:2010年05月07日 04:02