- 【初心者歓迎】C/C++室 Ver.97【環境依存OK】 [転載禁止]©2ch.net
127 :デフォルトの名無しさん[sage]:2015/12/13(日) 20:45:56.44 ID:vZabZWT7 - //a.h
typedef struct aaa_t aaa; aaa *aaa_0 (); void aaa_1 (aaa *); void aaa_2 (aaa *); void aaa_3 (aaa *); aaa *aaa_4 (aaa *); ----------------------------------------- //a.c struct aaa_t { int a; char *b; void *c; int d; int e; int f; }; aaa_0 とかの定義 ----------------------------------------- //b.c #include "a.h" void f () { aaa *p = aaa_0 (); aaa_1 (p); aaa_2 (p); aaa_3 (p); } 今現在Cでこんな感じになってるプログラムをC++にして struct aaa_t をclass aaaにしてaaa_1とかをaaaのメンバ関数にしようとしたら ヘッダファイルa.hのほうにclass aaaの定義を書いてその中にint aとかchar *bとかも 書くことになると思うんですけど、そうするとCのときよりも情報が見えるようになってしまうんですが それを隠したままにできる方法ありますか?
|
- 【初心者歓迎】C/C++室 Ver.97【環境依存OK】 [転載禁止]©2ch.net
129 :デフォルトの名無しさん[sage]:2015/12/13(日) 21:28:27.41 ID:vZabZWT7 - ありがとうございました
ヘッダファイルの方でクラスを抽象クラスにするしかないのかとか思ってました
|
- 【初心者歓迎】C/C++室 Ver.97【環境依存OK】 [転載禁止]©2ch.net
132 :デフォルトの名無しさん[sage]:2015/12/13(日) 23:00:33.98 ID:vZabZWT7 - 継承させるのは不満は大有りだった
今教えてもらったものでもCに比べたらポインタの分サイズは大きくなるけど
|
- 【初心者歓迎】C/C++室 Ver.97【環境依存OK】 [転載禁止]©2ch.net
135 :デフォルトの名無しさん[sage]:2015/12/13(日) 23:37:27.90 ID:vZabZWT7 - 元々一つなのを二つに分けるのは何か不自然な感じがしたから
サイズに関しては仮想関数へのポインタ持つから継承でも増えるってのもあるし
|