- ベストアンサー
Tのコンストラクタ
テンプレートを規定のコンストラクタがないクラスで特定する使い方は出来ますか。 教えてください。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (4)
- Tacosan
- ベストアンサー率23% (3656/15482)
- MASATO3
- ベストアンサー率60% (27/45)
- επιστημη(@episteme)
- ベストアンサー率46% (546/1184)
- επιστημη(@episteme)
- ベストアンサー率46% (546/1184)
関連するQ&A
- コンストラクタって?
↓ ↓ ↓ クラスを基にインスタンス化を行いますが このときに初期化を行わなくてはならないことがあります。 それを実現するのが「コンストラクタ」です。 のような解説はたくさん読んできたのですが 具体的にどういう場合にコンストラクタを使用するのでしょうか? プログラムには必ずコンストラクタは必要なんですか? 例えばシューティングゲームを作るときの こういう処理にコンストラクタが役立つんだよー! などという具体的な例があればぜひ教えてください。 どなたかご協力よろしくお願いします!
- ベストアンサー
- Java
- コンストラクタについて
VCの勉強をしています。 ちょっとショッキングなことを聞いてしまいました。 クラスのインスタンスを作成した場合、 コンストラクタは継承もとのコンストラクタもよばれる?? これって本当ですか!! MFCだとクラスの階層はだいぶ深いです。 例えば基本のCviewなんかはCObject>CCmdTarget>CWnd>Cviewの順に継承されています。 MFCでは更にCViewを継承したCTestViewなんてクラスがコードの主役です。 それでCTestViewのインスタンスを作成した場合、 コンストラクタはCTestViewのコンストラクタだけ実行すると思いますが、 ショッキングな内容ではCViewのコンストラクタも実行されてます。 これって本当にそうなるのでしょうか。 もし、そうならコンストラクタはてっぺんのCObjectから順に実行されますか。 それとも1つ上の継承先だけですか。 また、何でこんな仕組みにする必要があるのですか? 更にいえばCObjectにはSerializeという関数があります。 これをCTestView.serializeとした場合、 CObjectから順々にSerializeが呼び出されているのでしょうか? そんなことあるわけないよと、あまりにもバカバカしいのですが、 知人がそうだと言い張るのでよろしくお願いします。
- ベストアンサー
- C・C++・C#
- 親クラスのコンストラクタは? 引数付きコンストラクタは?
VisualBasic.NETです。 あるクラスを継承したクラスからインスタンスを作成したときに、派生クラスのコンストラクタは呼び出されると思うのですが、基本クラスのコンストラクタはどうなるのでしょうか? JAVAのように、super() で呼び出す必要があるのでしょうか? 自動で呼び出されるのでしょうか? それとも、そもそも呼び出せないのでしょうか? また、引数の個数が違うコンストラクタは、同じクラス内に設定できるのでしょうか? JAVAのコードを移植しようと考えているのですが、出来るのかどうかが分からずに悩んでいます。 ご存じの方、よろしくお願いします。
- ベストアンサー
- Visual Basic
- デフォルトコンストラクタについて
クラスについて、デフォルトコンストラクタについて理解が乏しいのですが、クラスB側で何か細工をすると、クラスAのデフォルトコンストラクタ無しで、エラーなくコンパイルできるのでしょうか? 派生クラスの親のベースクラスのコンストラクタを呼ぶsuper?でOKなのでしょうか? #include "stdafx.h" class A { public: //A(){} // これをコメントアウトにすると // error C2512: 'B' : クラス、構造体、共用体にデフォルト コンストラクタがありません。 A(int x){} ~A(){}; }; class B : A { }; void main(void){ B b; }
- ベストアンサー
- C・C++・C#
- 計算してからコンストラクタに渡すか
メインクラスAからクラスBをインスタンス化します。 Bクラスが持つ変数Cには1~100までの数値がランダムで入ります。 ここで、AクラスであらかじめCを計算しておいてBクラスのコンストラクタに引数として渡すのか それともAクラスではBクラスを生成するだけで、 Bクラスのコンストラクタ内で変数Cの値を計算するのか どちらが良いでしょうか? お教えください。
- ベストアンサー
- Java
- 【.NET】コンストラクタをあとで呼出す方法
.NET初心者です。 今VB.NETでVB6向けの自作COMクラスライブラリを作成しています。 自作クラスはStreamWriterクラスのラッパークラスとしてStreamWriterと継承関係にあります。 COMは引数なしのコンストラクターを一つ用意しなければなりませんが、 StreamWriterクラスは引数なしのコンストラクタを用意されていないため困っています。 自作クラス自身もFileクラスのラッパークラスで引数として使う必要があるため 継承関係を維持してVB6に公開する必要があります。 この問題をなんとか解決する手法って存在するのでしょうか? ちなみにほかに考えた手法は下記です。 ・プロパティーに StreamWriterのインスタンスを用いて継承関係なしであとでinitメソッドを呼び出す →Fileラッパークラスの引数でStreamWriter型に代入出来ないため不可 ・StreamWriterを引数に取るメソッドの実装をあきらめる →極力したくない ・StreamWriterラッパークラスの引数なしコンストラクタでStreamWriterクラスの引数ありコンストラクタを呼ぶ →後でファイルのパスを指定する方法が見つからないため不可 他言語はそれなりにやってきたのでコンストラクターをあとで呼び出すなんて出来ないのはなんとなくわかるのですが何せ.NETを触り始めたのが最近なのでよろしくお願い致します。
- ベストアンサー
- Visual Basic
- 親クラスコンストラクタを呼び出すタイミングについて
・親クラスコンストラクタを呼び出すタイミングに決まりはあるのでしょうか? ・例えば、子クラスのコンストラクタではなくて、子クラスのメソッドとかで呼び出しても良いのでしょうか? ・後、親クラスコンストラクタ処理が不要な場合は、子クラスから呼ばなくても別に構わないのでしょうか?
- ベストアンサー
- PHP
- コンストラクタについて教えてください!!
すみません A a = new A(); を例にとりますと Aクラスに引数のないコンストラクトがありますと、そのコンストラクトが呼ばれ、Aクラスにコンストラクトが存在しないとデフォルトコンストラクトが呼ばれるのでしょうか?つまりA a = new A();の式でもAクラスのコンストラクタが存在するかしないかで2通りの呼び方があるということでいいのでしょうか?
- ベストアンサー
- Java
- コンストラクタとデリゲートの意味を教えてください。
コンストラクタは、起動時に自動生成される処理のことをいいますか? 1度だけ実行されるクラスをコンストラクタと言っているのですか??? デリゲートは、クラスからメソッドを呼び出すことをデリゲートといいますか? クラスから処理を別に渡すとそれはデリゲートですか???
- ベストアンサー
- Visual Basic
- キヤノンプリンターMG7530の表示部に「カセット1で用紙が詰まっています。排紙口から用紙を取り除いて下さい。」と表示されています。
- 使用しているプリンターの説明書をなくしてしまいました。
- 排紙口とカセット1とはどこにあるのでしょうか。
お礼
参考になりました。 有難う御座いました。