繁体   English   中英

对链表更好的结构或类?

[英]Structure or class which is better for linked list?

对于链表实现更好

使用结构

#include <iostream>

using namespace std;

struct Node {
    int data;
    Node* next;
};

使用课程

class ListNodeClass
   {
   private:
      ItemType Info;
      ListNodeClass * Next;
   public:

      ListNodeClass(const ItemType & Item, ListNodeClass * NextPtr = NULL):
         Info(Item), Next(NextPtr)
            {
            };
      void GetInfo(ItemType & TheInfo) const;
   friend class ListClass;   
   };

typedef ListNodeClass * ListNodePtr;

或者他们是否有更好的方法在C ++中进行链表?

classstruct在C ++中唯一不同的是默认接口。 如果你写:

struct MyStruct
{
    int a;
}

和:

class MyClass
{
    int a;
}

唯一的区别是两者都是a领域。 MyStruct字段中, a是公共的,在MyClass字段中, a是私有的。 当然,您可以在结构和类中使用publicprivate关键字来操纵它们。

如果您使用C ++编程,则应使用类。

链表是一回事,它的节点是另一回事。 节点是列表实现的一部分。 它们不应该在列表的界面中可见,因此它们的形式并不重要。 我会这样做的

class List
{
private:
    struct Node
    {
        int data;
        Node* next;
    };
public:
    ...
};

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM