错误C2143:在'常量'之前缺少语法错误')'
问题描述:
我是一名在课堂上使用C++的学生。我在其他三个问题上看到了这个错误,但是,它们都是通过在硬编码前添加一个基本算术符号来解决的。由于我不算算术,我不认为他们会帮助我。错误C2143:在'常量'之前缺少语法错误')'
对于我们的任务,我们必须解析参考书目并将结果条目存储到条目的链接列表中。为此,我们使用的这本书有一个链表类,但它有错误。我找不到的错误集之一是:
- “错误C2143:语法错误:缺少')'之前'常量。
- “错误C2143:语法错误:缺少';'之前'不变'。
- “错误C2059:语法错误:缺少')'
- ”错误C2238:在';'之前的意外标记(s)
违规行在一个模板头,我的问题是我能做些什么来解决这个问题? 的代码可以在这里找到:
template <class DataType>
class LinkedList : public AbstractLinkedList<DataType>{
protected:
DataType* _info;
LinkedList<DataType>* _next;
void copy(const LinkedList<DataType>& 11); //first offending line
public:
LinkedList();
LinkedList(const LinkedList<DataType>& ll);
LinkedList(const DataType& info);
LinkedList(const DataType& info, LinkedList<DataType>* next);
~LinkedList();
};
template <class DataType>
void LinkedList<DataType>::copy(const LinkedList<DataType>& 11){ //second offending line
if(ll._info == NULL){
_info = NULL;
} else {
_info = new DataType(*(ll._info));
if(_info == NULL){
throw LinkedListMemory();
}
}
if(ll._next == NULL){
_next = NULL;
} else {
_next = new LinkedList<DataType>(*(ll._next));
if(_next == NULL){
throw LinkedListMemory();
}
}
}
我跳过部分未造成
事情我已经试过错误
:- 从“复制”改名到类似“copyList”
- 删除const关键字;
- 删除 “的LinkedList <” 和 “>”
- 删除 “< ”“ 数据类型>”
都不是固定的问题,我的理解是没有 “LinkedList的 '<' 数据类型> &”它不能真正用于模板表单。
答
变量名称不能以数字开头,因为一串数字将是一个有效的标识符以及一个有效的数字。
标识符不能以数字开头。 '11'从一个数字开始。 – juanchopanza 2014-10-20 14:26:48
11不是合法的变量名称。 – 2014-10-20 14:28:02