我们可以用类来写链表吗?不用结构
Can we write linked list using class?not using structure?
我上个月去面试,面试官问了一个有趣的问题:我们可以使用不使用结构的类来编写链表吗?我说是的,我也写了类似下面的代码。谁能解释一下是对还是错?
class list {
public:
int a;
class *list;
};
您可以使用类和结构来编写数据结构,例如链表。像类和结构这样的术语在C++中意味着同样的事情。唯一不同的是默认可见性,它为类和结构public
private
。话虽如此,您的类格式不正确,它应该是:
class list {
public:
int a;
list* l; // list* instead of class* here
};
使用关键字struct
时,您可以省略public:
说明符:
struct list {
int a;
list* l;
};
请注意,标准C++库中已经有现成的容器。
相关文章:
- 链表,反向函数,数据结构
- 我对数据结构、双向链表有一些问题
- 使用带有链表的堆栈数据结构将中缀转换为后缀
- 使用链表数据结构打印多项式
- C++:如何做一个链表,结构作为参数传递?
- 为什么将函数的返回类型从结构节点*更改为void后,链表的元素没有显示create_ll和显示?
- 如何通过不同的指针使用类的对象访问结构?(链表)(C++)
- 在C++中使用链表的堆栈实现中,访问结构体headNode成员count和top会导致运行时错误
- 在排序链表中插入结构并将其写入二进制文件
- 具有多个结构的链表
- 使用带有结构结构作为 C++; 元素的单向链表
- 如何从文件读取到动态分配的指向结构的指针链表中?
- 结构内具有更多数据类型的单个链表
- 尝试连接两种不同类型的结构来创建链表
- C++中的数据结构,插入链表中节点的开头
- 自定义链表创建 RtlValidateHeap 错误,其结构具有链表
- 难以理解链表实现(结构部分)?
- 访问链表中的结构(带有指向其子实现的指针列表的树)
- C++排序结构链表
- 修改在其他结构(链表)中定义的结构对象的元素