トップページ > プログラム > 2015年12月13日 > vZabZWT7

書き込み順位&時間帯一覧

13 位/192 ID中時間01234567891011121314151617181920212223Total
書き込み数0000000000000000000011024



使用した名前一覧書き込んだスレッド一覧
デフォルトの名無しさん
【初心者歓迎】C/C++室 Ver.97【環境依存OK】 [転載禁止]©2ch.net

書き込みレス一覧

【初心者歓迎】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
元々一つなのを二つに分けるのは何か不自然な感じがしたから
サイズに関しては仮想関数へのポインタ持つから継承でも増えるってのもあるし


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。