我的代码看起来不错。为什么我要得到"error: expected primary-expression before ')' token"?
My code looks fine. Why am I getting a "error: expected primary-expression before ')' token"?
下面表示的行上的错误。是什么赋予了?
template <class T> T List<T>::count(T thisElement) {
node* curNodePtr = firstNodePtr;
int cnt = 0;
while (curNodePtr) {
if (curNodePtr->val == T) // error: expected primary-expression before ')'
++cnt;
curNodePtr = curNodePtr->next;
}
return cnt;
}
template <class T> T List<T>::count(T thisElement) {
首先,如果您编写计数方法,我想您宁愿返回int
而不是T
,因此该行应该看起来像这样:
template <class T> int List<T>::count(T thisElement) {
让我们继续...
if (curNodePtr->val == T)
我确定您想写类似:
if (curNodePtr->val == thisElement)
T
是一种类型。如果您以后将班级专注于int
,那么您的代码行将成为:
if (curNodePtr->val == int)
这就是为什么编译器抱怨。
为什么我会得到"错误:预期的一级表达')')'''?
因为T
是一种类型。您需要与实例进行比较。例如,T()
。
if (curNodePtr->val == T()) ....
^^
除此之外,您还必须确保您的功能实际上可以做一些明智的事情。那是另一回事。
相关文章:
- Arduino无法编译名为SP:"Expected ')' before '(' token"的变量
- 为什么我的功能在使用 goto 时会给我带来"expected primary-expression before '}' token"?
- 如何修复此错误"expected primary expression before 'int'"?
- 为什么在main()之前断言会导致语法错误"error: expected ')' before numeric constant"?
- 使用结构和数组时的"expected primary expression before '.' token"
- 如何解决"Expected expression before " = " token"?
- 错误:创建模板类时"expected unqualified-id before '{' token"
- AWS Lambda C++ 开发工具包"Process exited before completing request"
- 推导模板类重载方法的地址会导致"error: expected primary-expression before ‘decltype’"
- "error: expected primary-expression before '<=' token" 我做错了什么?
- 模板成员函数调用 -- "error: expected primary-expression before 'int'"
- 我的代码看起来不错。为什么我要得到"error: expected primary-expression before ')' token"?
- 如何修复"Expected Primary-expression before ')' token"错误?
- 简单继承实现中的构建错误"expected primary-expression before 'float' "来源
- C++错误"tabulate.cc:19: error: expected primary-expression before ',' token"
- 创建类的成员函数时的 C++ "Expected primary-expression before '.' token"
- "error: expected primary-expression before 'volatile'"
- 将指针传递给函数时出现"expected primary-expression before"错误
- 我的主函数中有一些 "expected primary-expression before 'int' " 类型的错误。怎么了?
- C++ "expected primary-expression before ‘(’ token"错误