>>871
例えばCでこんな構造体とそれを扱う関数があったとする。
typedef struct foo {
int Bar;
double Baz;
} Foo;
void fooSet(Foo * pFoo, int bar, double baz) {pFoo->Bar = bar; pFoo->Baz = baz;}
int fooGetBar(Foo * pFoo) {return pFoo->Bar;}
double fooGetBaz(Foo * pFoo) {return pFoo->Baz;}
これらはC++のクラスでこう書ける。
class foo {
int Bar;
double Baz;
public:
void set(int bar, double baz) {Bar = bar; Baz = baz;}
void getBar() {return Bar;}
void getBaz() {return Baz;}
最適化にも拠るが、実装上どちらもほぼ同じコードが出力される。
このように、「構造体とそれを扱う関数群」をまとめたものと捉えるのも一つのやり方。
#継承を考えない限り、Cからの移行にはこれでも充分有用。
#そのうちEffectiveC++辺りを読んで目から鱗を落とせばよろしい。