简单抽象数据类型链表
Simple Abstract data type linked list
我的类
class Product
{
...
};
class Perishable : public : Product
{
public:
int getday();
};
我想将易腐物品和产品对象的集合包含在一起,并希望通过链表的方式来实现。
通常对于链表,我们有类似的东西
class linkedlist
{
struct List
{
int item;
ListNode* next;
}
//.... all the functions
};
但我在这里遇到了一个问题,因为我想存储在item中的数据不是int,而是Product或Perishable,我如何将其实现为链表?
您可以将Product*
作为一个项目存储在链表中。您应该将virtual
方法添加到基类Product
中,该基类将在运行时根据此指针指向的对象的实际类型分派到适当的方法。
您需要模板。C++中的模板支持通用编程。在类LinkedList之前声明模板后,可以将int项替换为T项,其中T是占位符,并将根据实例化对象的方式替换为适当的数据类型(自定义或基元)。
相关文章:
- 基于给定字符串数据类型的链表删除节点
- 程序 使用链表插入数据时停止工作
- 结构内具有更多数据类型的单个链表
- 派生数据类型与抽象数据类型
- 如何创建抽象数据类型的模板类?
- 使用纯抽象数据类型作为返回
- 如何取消引用作为指针的链表节点数据
- 抽象数据类型(ADT)和数据结构之间有什么区别
- 数据类型为结构的链表
- 抽象数据类型命名约定:(动态)数组,向量,序列,列表,容器,缓冲区
- 内置于c++/python/java中的抽象数据类型
- 如何具有抽象数据类型的参数
- 数据类型匹配,但我的链表仍然出错
- 方形和对称表的数据类型
- c++Set-使用链表的数据结构
- 简单抽象数据类型链表
- 对抽象数据类型的stl::列表排序
- 我不能在我的抽象数据类型中使用队列
- 模板链表获取复杂数据类型的数据元素
- 是int, char也是抽象数据类型