gpt4 book ai didi

c++ - 错误 : unkown type name "my_class"

转载 作者:行者123 更新时间:2023-11-28 05:33:07 26 4
gpt4 key购买 nike

所以我声明了一个名为 my_class 的模板类,并在另一个文件“main.cpp”中使用了这个类。

我在 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

最佳答案

这是一个棘手的问题!

原来我包含了守卫的名字

#ifndef TYPE_H_DEFINE
#define TYPE_H_DEFINE

已被标准 c++ 库使用,所以我将其更改为不同的名称,难怪 Bjarne Stroustrup 为什么讨厌宏!!谢谢大家!

关于c++ - 错误 : unkown type name "my_class",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38966320/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com