我正在尝试使用模板作为通用(应该是)成员来保存菜单的GUI组件。我试图使用节点来创建菜单,我得到这两个错误C2244和C2955。我查看了这些错误并将它们与我的代码进行了比较,似乎无法找到我的问题。
我没有包含构造函数定义,因为问题是编译器错误。
编译器错误,如果你懒得阅读段落:
错误1:
$index = 0;
$final = [];
foreach ($array1 as $i => $arr) {
foreach($arr as $j => $user) {
$user['is_admin'] = $array2[$index];
$index++;
$arr[$j] = $user;
}
$final[$i] = $arr;
}
和
错误2:
Severity Code Description Project File Line Suppression State
Error C2244 'GUI::MenuNode<ui_Interface>::select': unable to match function
definition to an existing declaration
Severity Code Description Project File Line Suppression State
Error C2955 j'GUI::MenuNode': use of class template requires template
argument list
答案 0 :(得分:0)
作为Tyger建议的评论,我根本没有将模板声明放在getter方法上。
这应该是什么样子
const MenuNode<ui_Interface> & MenuNode<ui_Interface>::select() {
//some code here
}
这就是它过去的样子
//missing <ui_Interface> after the first MenuNode
const MenuNode & MenuNode<ui_Interface>::select() {
//some code here
}