在定义文件中使用关键字“this”

时间:2016-06-03 10:36:47

标签: c++ list linked-list

我正在努力学习c ++。所以我开始创建一个简单的类链表。根据我的理解,您应该将所有方法/构造函数声明放在.h文件中。但是在我完成之后我遇到了一个问题,同时创建方法prepend。如何在定义文件(.cpp)中使用关键字this:

标头文件

#ifndef LIST_LIST_H
#define LIST_LIST_H

template <class T>
class List {
public:
    List(T data, List tail): data(data), tail(tail) {}
    List prepend(T data);
    List get(int i);

private:
    List tail;
    T data;
};

#endif //LIST_LIST_H

实施档案

#include "List.h"

template <class T>
List::List(T data, List tail): data(data), tail(tail) {}

template <class T>
List List::prepend(T data) {
    return new List(data, this);
}

我尝试搜索解决方案,但由于我是c ++的新手,我不知道如何搜索它。

0 个答案:

没有答案