双向链表 2 个值 c++

发布于 2024-12-21 19:36:19 字数 111 浏览 1 评论 0原文

我需要用 C++ 为学校制作一个扑克游戏。 我制作了一个班级卡片和甲板。 我需要制作一个所有卡片的双向链接列表,每张卡片都有一个花色和一个等级(值)。如何将 2 个属性(花色和等级)附加到双向链表中的卡上。

I need to make a poker game for school in c++.
I have made a class Card and Deck.
I need to make a doubly linked list of all the cards, and every card has a suit and a rank (value). How can I attach 2 attributes (suit and rank) to a Card in a doubly linked list.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

野却迷人 2024-12-28 19:36:19

双链表是一种具有指向上一个和下一个链接的指针的结构(结构或类)。除了这些指针之外,您还可以添加任意数据,这些数据可以被视为有效负载。您可以在那里放置任何您想要的数据。这是一个例子:

class Card {
    public:
       // Constructor
       Card(int rank, int suit, Card* prev=NULL) 
       {
           if (prev)
           {
             m_prev = prev; 
             prev->m_next = this;
           }
           m_prev = prev;
           m_rank = rank;
           m_suit = suit;
       }
       // Accessors
       int Rank() { return m_rank; }
       int Suit() { return m_suit; }
       Card* Prev() { return m_prev; }
       Card* Next() { return m_next; }

    private:
       int m_rank, m_suit;
       Card *m_prev, *m_next;
}

A double linked list is a structure (a struct or a class) with pointers to the previous and the next link. In addition to these pointers you can add arbitrary data, which can be considered the payload. There you can put any data you want. Here is an example:

class Card {
    public:
       // Constructor
       Card(int rank, int suit, Card* prev=NULL) 
       {
           if (prev)
           {
             m_prev = prev; 
             prev->m_next = this;
           }
           m_prev = prev;
           m_rank = rank;
           m_suit = suit;
       }
       // Accessors
       int Rank() { return m_rank; }
       int Suit() { return m_suit; }
       Card* Prev() { return m_prev; }
       Card* Next() { return m_next; }

    private:
       int m_rank, m_suit;
       Card *m_prev, *m_next;
}
幻想少年梦 2024-12-28 19:36:19

花色和等级是卡牌的属性,与链表无关。因此,这些属性最好封装到 Card 类中。

如果您已经这样做了,但仍有不清楚的地方,请扩展您的问题。

The suit and the rank are properties of the card, and have nothing to do with the linked list. As such, these properties are best encapsulated into the Card class.

If you already do this, and something remains unclear, please expand your question.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文