如何解决从类
中的C ++调用类方法 我有一个实现链表的类。该类具有一个find()方法,该方法可以在链表中找到一个值。我有另一个添加节点的方法add(),但是仅当列表中不存在该节点中包含的值时才可以。 所以我想在我的add()函数中做的是使用我的find方法,而不是测试现有值,因为那就像是第二次实现它。我的问题是,如何从该类的另一个方法中调用find方法? 我试过打电话 this.find(x) 但这给了我错误。 这是我的一些代码:// main function
sllist<int>list;
list.add(20);
list.add(14);
// sllist.h (interface and implementation)
template<typename T>
bool sllist<T>::find(const T& val) const {
// finds value
}
template<typename T>
void sllist<T>::add(const T& x) {
bool found = this.find(x);
if (found) return false;
// goes on to add a node in the Singly Linked list (sllist)
}
因此,就像我说的那样,我希望能够从该类的另一个方法中调用find方法,并且我认为为此要做的就是引用调用对象,然后对其进行调用查找方法,但是正如我所说,这给了我很多错误。
任何人都可以帮我解决这个问题,谢谢!解决方法
叫call1ѭ。不需要这个。同样,“ 2”是指向当前对象的指针。因此,您必须做
this->find(x)
。,this
是一个指针,如果要使用它,则应采用以下两种方式之一:
this->find(x);
(*this).find(x);
find(x);
另外,函数ѭ6function应该返回bool
(而不是void
)。版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。