/* Class Hand represents a hand in Hold'em poker.
Namely the best 5 cards formed from 7 cards: 2 player's pocket cards
and 5 cards from the board.*/
class Hand {
public:
Hand(const std::vector<CardPtr>& cardseq);
/*...*/
};
构造函数需要一个卡片 vector 。该类的内部逻辑基于给定 vector 由 7 张牌组成的假设。但我没有控制它。当构造函数中的 cardseq.size() != 7
时,我可以抛出异常。但是有没有其他方法可以通过控制初始化 vector 的大小来保持类实例的行为有意义?
最佳答案
如果您的数据结构始终是 7 张卡片的数组,那么为什么不使用 std::array<CardPtr, 7>
?
关于c++ - 将特定大小的 vector 传递给函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29858737/