C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[4]: CLASSのメンバー変数を隠ぺいしたい


(過去ログ 115 を表示中)

[トピック内 5 記事 (1 - 5 表示)]  << 0 >>

■67764 / inTopicNo.1)  CLASSのメンバー変数を隠ぺいしたい
  
□投稿者/ 篠崎河原 (1回)-(2013/08/31(Sat) 10:33:12)

分類:[.NET 全般] 

はじめまして

C++のクラスの関数宣言だけ利用者にhead fileの形で提供したいですが、
クラス内部のメンバー変数の名前やタイプ定義を提供しない方法を教えてください。

どうぞ宜しくお願い致します。

引用返信 編集キー/
■67773 / inTopicNo.2)  Re[1]: CLASSのメンバー変数を隠ぺいしたい
□投稿者/ 774RR (102回)-(2013/08/31(Sat) 14:11:38)
pimpl パターンとか。

引用返信 編集キー/
■67774 / inTopicNo.3)  Re[2]: CLASSのメンバー変数を隠ぺいしたい
□投稿者/ 篠崎河原 (2回)-(2013/08/31(Sat) 15:21:02)
No67773 (774RR さん) に返信
> pimpl パターンとか。
>

前回説明不足ですみません。
ここで言っている「クラスメンバー変数の隠蔽」とは他のclassメンバー関数からアクセスできないというばかりではなくて、
ライブラリー利用側に提供するヘッダファイルの中に「クラスメンバー変数の定義内容が現れなくてもいい」。
即ち、プログラムを実行する時のアクセス権の問題でなく、
他の人に変数定義を見せたくないのです。

このような目的を達成する方法はあるのでしょうか。



引用返信 編集キー/
■67775 / inTopicNo.4)  Re[3]: CLASSのメンバー変数を隠ぺいしたい
□投稿者/ (こ) (2回)-(2013/08/31(Sat) 16:21:24)
No67774 (篠崎河原 さん) に返信
> ここで言っている「クラスメンバー変数の隠蔽」とは他のclassメンバー関数からアクセスできないというばかりではなくて、
> ライブラリー利用側に提供するヘッダファイルの中に「クラスメンバー変数の定義内容が現れなくてもいい」。
> 即ち、プログラムを実行する時のアクセス権の問題でなく、
> 他の人に変数定義を見せたくないのです。

いや、まさにそれを行うのが774RRさんのおっしゃっているpimplイディオムだと思うのですが…。
http://ja.wikibooks.org/wiki/More_C%2B%2B_Idioms/%E3%83%8F%E3%83%B3%E3%83%89%E3%83%AB%E3%83%BB%E3%83%9C%E3%83%87%E3%82%A3%28Handle_Body%29
引用返信 編集キー/
■67786 / inTopicNo.5)  Re[4]: CLASSのメンバー変数を隠ぺいしたい
□投稿者/ 篠崎河原 (3回)-(2013/09/02(Mon) 09:14:10)
774RR様、(こ)様

ご教授あちがとうございました。
助かりました!


解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -