gpt4 book ai didi

c++ - 我想创建一个 Vector 来保存类

转载 作者:太空宇宙 更新时间:2023-11-03 10:35:39 26 4
gpt4 key购买 nike

我对制作一个 vector 来保存类感到很困惑。

如果我想像下面的例子那样在单个 vector 中保存一堆数据,然后将数据写入类成员函数中,并能够被其他函数调用和使用。

我应该把 vector 声明贴在哪里?请帮忙!

#include <vector>

class Card
{
public:
int suit;
int rank;
Card::Card(int suit, int rank);
Function();
};

vector<Card> cards;

int main()
{
}

Card::Function()
{
for loop...
Card cardz(i, i);
cards.push_back(cardz);
}

最佳答案

在我看来,您正在扩展 Card 对象应该做的事情的范围。我可以建议以下布局吗?首先定义一张卡片。

class Card {
public:
Card(int s, int r)
: suit(s), rank(r) {
// Initialize anything else here
}

private:
int suit, rank;
};

接下来,定义一个包含卡片的vector 并对其进行操作的对象。我们称它为 Deck

class Deck {
public:
Deck();

private:
vector <Card> cards;
};

现在,在您的 Deck 类中,您可以根据需要初始化卡片集合。

Deck::Deck() {
for (int suit = 0; suit < 4; suit++) {
for (int rank = 0; rank < 13; rank++) {
cards.push_back(Card(suit, rank));
}
}
}

关于c++ - 我想创建一个 Vector 来保存类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4393603/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com