2017-03-02 4 views
-4

私はこの質問が難しいと思います。あなたは何を考えますか?Q:次のコードはいくつのクラスを生成しますか?

template <typename T> class myTemplate 
{ 
public: 
    T val; 
... 
}; 
void myFunction() 
{ 
    MyTemplate<int> a; 
    MyTemplate<double> b; 
} 
+0

私はこれが実際に実装定義されていると誤解されていない場合、実装は2つのクラスを生成するかもしれません。オプティマイザは、特に賢い場合にクラスを最適化するかもしれません:) – Rakete1111

+0

私は答えが2つのクラスだと思った。必要な種類ごとに1つずつ... Btw、なぜ人々は私の質問を投票していないのですか?それは大丈夫ですか?私はここに新しいよありがとう – Jack

答えて

0

2つの異なるテンプレートパラメータでテンプレートを2回インスタンス化するので、2つのクラスインスタンスが作成されます。

関連する問題