C++ c++;模板:可以/如何使用结构作为模板的实例化类型?
具体内容: 我想要下面的结构C++ c++;模板:可以/如何使用结构作为模板的实例化类型?,c++,templates,C++,Templates,具体内容: 我想要下面的结构 struct edgeT { string home; string away; int weight; }; 然后有一个edgeT类型的优先级队列 我编写了一个快速程序来测试优先级队列,但是我得到了以下错误消息 “模板类minPQ”的“模板参数”使用本地类型“Main()::edgeT” 我刚刚在main()例程的开头定义/声明了结构 结构是否必须在其他地方定义 只有在C++11之后,才能将函数中定义的类型用作
struct edgeT {
string home;
string away;
int weight;
};
然后有一个edgeT类型的优先级队列
我编写了一个快速程序来测试优先级队列,但是我得到了以下错误消息
“模板类minPQ”的“模板参数”使用本地类型“Main()::edgeT”
我刚刚在main()例程的开头定义/声明了结构
结构是否必须在其他地方定义 只有在C++11之后,才能将函数中定义的类型用作模板参数。可以使用C+11,也可以将结构定义放在命名空间范围。您能告诉我们您是如何尝试使用
minPQ
的吗?错误在哪一行?您缺少edgeT
的严格弱排序比较器,但是,您引用的错误指向另一个错误。请移动“<代码> EdGET < /C> >代码之外>主< /COD>(它也看起来像您不正确地将其命名为<代码>主< /COD>,C++是区分大小写的)。或者,如果您使用的是gcc,请尝试使用-std=c++11
开关进行编译。