私はmy_classというテンプレートクラスを宣言しました。このクラスを別のファイル "main.cpp"で使用します。エラー:不明な型名 "my_class"
私のmain.cppに "my_class.h"が含まれていて、不明な型名エラーが発生しました。誰もが何が起こっているのか知っていますか?ここで
はいくつかのコードです:
// "my_class.h"
#ifndef TYPE_H_DEFINE
#define TYPE_H_DEFINE
#include <vector>
#include <algorithm>
namespace wtvr {
template<class T>
class my_class {
public:
void add(const T&);
const T& get();
private:
std::vector<T> my_class_vec;
};
template<class T>
void my_class<T>::add(const T& obj) {
my_class_vec.push_back(obj);
}
template<class T>
const T& my_class<T>::get() {
std::random_shuffle(my_class_vec.begin(), my_class_vec.end());
return my_class_vec[0];
}
}
#endif
あなたが表示したコードは、私にはよく見えます。問題は、あなたが示していないコードのどこかにある必要があります。 –
コードを投稿する必要があります。私たちがあなたが間違っていることをどのように理解すると思いますか? – Barmar
いいえ –