65,207
社区成员
发帖
与我相关
我的任务
分享#include<iostream>
using namespace std;
template <typename T>
class node
{
T data;
node *next;
public:
node(T d = 0) :data(d), next(NULL)
{
}
template<typename T> friend class list;
};
template <typename T>
class list
{
public:
list() :head(NULL)
{
}
void push(T data);
void print();
private:
node<T> *head;
};
template <typename T>
void list<T>::push(T data)
{
node<T> *s = new node<T>(data);
if (!head)
{
head = s;
return;
}
node<T> *p = head;
while (p->next)
{
p = p->next;
}
p->next = s;
}
template <typename T>
void list<T>::print()
{
node<T> *p = head;
while (p)
{
cout << p->data << endl;
p = p->next;
}
}
int main()
{
list<int> a;
a.push(1);
a.push(2);
a.push(3);
a.push(5);
a.print();
}
,我还是得好好看看书呀#include<iostream>
using namespace std;
template <typename T>
class list
{
public:
struct node
{
T data;
node *next;
public:
node(T d = 0) :data(d), next(NULL){}
friend class list;
};
list() :head(NULL){}
void push(T data){
node *s = new node(data);
if (!head){
head = s;
return;
}
node *p = head;
while (p->next)
p = p->next;
p->next = s;
}
void print()
{
node *p = head;
while (p)
{
cout << p->data << endl;
p = p->next;
}
}
private:
node *head;
};
int main()
{
list<int> a;
a.push(1);
a.push(2);
a.push(3);
a.push(5);
a.print();
return 0;
}template<typename T> friend class list<T>;
