为什么找不到重载运算符函数?
Why isn't the overloaded operator function being found?
我在C 项目中超载了增量运算符,但是当我尝试调用它时,找不到过载功能。
TListIterator< T > & operator ++( void )
{
TListElement< T > *pNext = pCurrent->getNext();
if( pCurrent && pNext )
this->pCurrent = pNext;
return *this;
}
我尝试像这样说:
(*it)++;
超载方法是" tlistiterator"类的一部分,它是指向tlistiterator的指针。
我收到的错误是:
Error C2676 binary '++': 'TListIterator<T>' does not define this operator or a conversion to a type acceptable to the predefined operator
编辑向将我的问题标记为您将我链接给我的问题的人解释:
另一篇文章直接询问您如何区分收入后和提交前的超负荷,因为我不知道我的呼叫不起作用的原因是由于使错误的操作员超载使我的问题完全不同。
超载增量运算符时,只有两种方法。因此,尝试定义您的功能如下:
TListIterator< T > & operator ++()
或
TListIterator< T > & operator ++(int)
其中第一个前缀和后缀的第二个。
相关文章:
- 为什么这个运算符<重载函数对 STL 算法不可见?
- 重载运算符new[]的行为取决于析构函数
- 构造函数和转换运算符之间的重载解析
- C++ STD 函数运算符:有没有一种方法可以通过函数将一个向量映射到另一个向量上?
- 是什么让一些命名函数/运算符与众不同?
- 删除了所有自动生成的构造函数/运算符的类仍然可以从函数返回吗
- 如何在局部类中定义友元函数运算符>>?
- 隐式转换和函数运算符
- 如何从函数运算符(x,y)返回向量元素的引用
- C++/析构函数-运算符删除
- 获取函数运算符<未定义的引用
- VS2012 std::函数运算符 bool 意外返回 true
- "Polymorphic"非成员函数/运算符,是否需要额外的重载?
- Xcode - 控制到达非无效函数运算符错误的末尾
- 重载类函数运算符兼任二传手和吸气手
- 为简单结构定义哪个复制/移动构造函数/运算符
- 关于函数/运算符重载的困惑
- 函数运算符上的未定义引用>>
- C++ 重载函数运算符和继承,无法在子类函数中正确使用它
- 如何使用另一个类的重载函数运算符(operator())