template <typename T>
struct ConstArray {
///MEMBERS
T* data_;
T* end_;
///Constructors
ConstArray(T* data, T* end) : data_(data), end_(end) {}
};
template struct ConstArray<const char>;
は私に(nm -C *.o
)を与える:
0000000000000000 W ConstArray<char const>::ConstArray(char const*, char const*)
0000000000000000 W ConstArray<char const>::ConstArray(char const*, char const*)
0000000000000000 n ConstArray<char const>::ConstArray(char const*, char const*)
私は3つのシンボル(2 W + 1からnを(取得するように見えるのか分かりませんそれは)私が定義する各コンストラクタについてです。関数は、私が期待どおりの1つを与えるように見えます。 誰かがこれがなぜか説明してください、または説明を教えてください。
関連:http://stackoverflow.com/questions/6921295/dual-emission-of-constructor-symbols – Michael
yepp、それがhttps://www.google.com/search?q=multiple+constructorsに見つかりました+生成され、どこか別の大きな答えがあった、私はちょうど使用する検索語を知らない。 –
@Michaelありがとうございました。この質問は、説明できないn記号まで重複しています。 – PSkocik