ページ 11

コンストラクタが・・・

Posted: 2008年6月28日(土) 21:05
by J
エラー E2247 c:\item\item\main.cpp 9: 'field::field' はアクセスできない(関数 main() )

と表示されてアクセスできませんorz
このエラー文から推測できる原因はありますか?
あまり、ソースは公表したくないので・・・

Re:コンストラクタが・・・

Posted: 2008年6月28日(土) 21:08
by たかぎ
コンストラクタがpublicまたはprivateの場合が考えられます。

(追記)
↑書き間違い。protectedまたはprivateでした。

Re:コンストラクタが・・・

Posted: 2008年6月28日(土) 21:19
by J
すみません、原因は自分でつきとめた、のですが・・・

原因は、fieldをprivateスコープに入れていたからでした。簡単なことでしたorz
しかし、問題がそれになりました。同じクラスのメンバ関数に引数で渡したいだけなのに、クラスの外からは渡せないのでしょうか?
fieldはprivateのままにしておきたいのですが。。

Re:コンストラクタが・・・

Posted: 2008年6月28日(土) 21:19
by たかぎ
ソースを見ないと何ともいえませんね。

Re:コンストラクタが・・・

Posted: 2008年6月28日(土) 21:20
by J
あう><
連レスすみません、問題のfieldはコンストラクタではなく、変数の方でした。
ご迷惑おかけしました。

Re:コンストラクタが・・・

Posted: 2008年6月28日(土) 21:23
by たかぎ
> 問題のfieldはコンストラクタではなく、変数の方でした。

全然違いますね。

> 同じクラスのメンバ関数に引数で渡したいだけなのに、クラスの外からは渡せないのでしょうか?


無理です。
privateはクラスの外から触れないようにするためのものですから。

Re:コンストラクタが・・・

Posted: 2008年6月28日(土) 22:09
by J
そうでしたか・・・
回答してくださったみなさん、ありがとうございました。
そして、お騒がしてすみませんでした。