VC++2003の環境なんですが、
下記の状態でtest2.a()を呼び出すと未解決の外部シンボル(LNK2019)のエラーが発生します。同じファイルでこれらを定義した場合は普通に通りました。class内で定義した場合も通ります。なぜでしょうか?
test1.h :
template<class T>
class test1
{
public:
void a();
};
test1.cpp :
template <class T> void test1<T>::a(){}
test2.cpp :
class test2 : public test1<int>
{public:};
No.4
- 回答日時:
> 書かれたclassの全ての関数はインラインメンバー関数(>>直接定義)になっているということですが、その理由はなんだろなと考えてみました。
了解です。使われる(テンプレート引数が確定する)時点で定義(実装)が存在しないとコンパイルできないからです。
# inline とは意味合いが違いますけども。
No.3
- 回答日時:
> #include "vector"などのclass内の関数が直接(関数に渡す形で)定義されていたことを思い出しましたが、理由はこれですか。
何言ってるのかわかりません。
stlのVc7\include\vectorファイルのことですが
下記のように書かれたclassの全ての関数はインラインメンバー関数(>>直接定義)になっているということですが、その理由はなんだろなと考えてみました。
template<class ***>
class vector<***,***>
{***};
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Java java final 1 2022/06/10 22:49
- C言語・C++・C# Windows Formアプリからコンソールを呼び出して文字を出力させたい 8 2023/05/09 10:53
- Ruby 【JAVA】数字をひし形に出力するプログラムについて 2 2022/07/11 23:32
- Java Java プログラム public class Main { public static void 3 2023/08/10 23:46
- HTML・CSS ブロックエディターで作りつつ、画像を挿入しつつ、画像にスタイルシートのコードを付ける方法はありますか 1 2022/08/23 18:46
- HTML・CSS 【CSS】特定のリンクを含むaタグを指定できるかどうか? 3 2022/10/15 02:45
- Java java 入力 3 4 3 出力 ABC DEFG HIJ このようなプログラムの書き方を教えてくだ 2 2022/07/15 14:18
- Java 直し方について教えて頂きたいです。 4 2022/08/13 02:11
- JavaScript vertical sliderをautoplayしたい 2 2022/08/25 14:47
- C言語・C++・C# 質問です 下記のコードを分かりやすく解説お願いします 初心者です #include ‹stdio.h 3 2022/05/26 22:03
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
End Sub が必要です。
-
Excel VBA: UserForm.Show で実...
-
C言語の質問です。
-
intel fortranのエラーで困って...
-
fortran 配列宣言のオーバーフ...
-
Excel VABについて 下記記述が...
-
フォートランのエラーについて...
-
Texに詳しい方よろしくお願いい...
-
ISLispのsetq関数について教え...
-
ダブルコートのエスケープ
-
C# IEnumerable が IEnumerable...
-
フォートラン(fortran)のエラー...
-
STL mapでアクセス違反
-
Excel・Word リサーチ機能を無...
-
特定のPCだけ動作しないVBAマク...
-
メッセージボックスのOKボタ...
-
エクセルで特定の列が0表示の場...
-
配列数式の解除
-
UserForm1.Showでエラーになり...
-
Excel マクロ VBA プロシー...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
End Sub が必要です。
-
pythonの条件分岐(if)
-
Excel VABについて 下記記述が...
-
43:syntax error at end of input
-
フォートランのエラーについて...
-
intel fortranのエラーで困って...
-
他クラスからForm1内コントロル...
-
Excel VBA: UserForm.Show で実...
-
AccessVBAでVLookupを使いたい
-
対応する関数ヘッダーがありません
-
VB2005でOCXを動的に呼び出すに...
-
C# IEnumerable が IEnumerable...
-
ラズパイ上の、pythonのエラー...
-
コンパイルで未定義のシンボル
-
select関数の使用方法について
-
HEW3とBorlandC++でクラス定義...
-
構造体のポインタ参照
-
VB.NETのStructureの使い方を教...
-
waveOutProc関数での定義
-
フォートラン(fortran)のエラー...
おすすめ情報