关于c ++:我们可以使用类编写链表吗?不使用结构吗?


Can we write linked list using class?not using structure?

本问题已经有最佳答案,请猛点这里访问。

上个月我去面试了,面试官问了一个有趣的问题:我们能用课堂而不是结构来写链接列表吗?我说是的,还写了一些类似下面的代码。有人能解释这是对是错吗?

1
2
3
4
5
class list {    
public:    
   int a;  
   class *list;
 };


您可以使用类和结构编写数据结构,如链接列表。类和结构之类的术语在C++中意味着同样的事情。唯一不同的是默认可见性,类的private和结构的public。如果说你的班级结构不好,应该是:

1
2
3
4
5
class list {    
public:    
   int a;  
   list* l; // list* instead of class* here
};

当使用关键字struct时,可以省略public:说明符:

1
2
3
4
struct list {
   int a;  
   list* l;
};

请注意,在标准C++库中已经有现成的容器了。