我试图在c ++中实现单链表,而且我遇到了很多范围问题,我不知道为什么。我收到了// class User
public function scopeOfFullNameLike($query, $fullName)
{
return $query->whereRaw('CONCAT(name_first, " ", name_last) LIKE "%?%"', [$fullName]);
}
// ...
User::ofFullNameLike('john doe')->get();
这是我的.h文件
LinkedList.cpp:28:11: error: ‘class LinkedList’ has no member named ‘current’ if(this->current == NULL)
这是我的cpp文件(我有更多的问题,特别是关于LinkedList的实现,但我更关心当前的编译错误)
#ifndef LINKEDLIST_H
#define LINKEDLIST_H
class Node
{
friend class LinkedList;
private:
int data;
Node* next;
Node* getNext() { return this->next; };
public:
Node() { data = 0; next = NULL; };
void setData(int data) { this->data = data; };
void setNext(Node* next) { this->next = next; };
};
class LinkedList
{
private:
Node* head;
Node* current;
public:
LinkedList() { head = current = NULL; };
//LinkedList(const LinkedList &l)
//TO DO: Destructor
void next();
void reset();
void append(int data);
void replaceData(int data);
void removeNode(int data);
void removeLast();
bool reset();
void operator++() { next(); };
};
#endif
我意识到我很可能错过了一些非常明显的东西,但我无法想象这一点来挽救我的生命。
答案 0 :(得分:2)
void reset();
bool reset();
函数不能通过返回类型重载。
void LinkedList::removeNode(int data)
{
if (this->current->getData() == data) break;
}
您的node
课程没有getData()
功能。
我已经通过修复这两个问题the spec成功编译了您的代码。
如果这还不够,那么你可能根本就不包括LinkedList标题。