所以我正在尝试创建一副纸牌,但我对 C++ 和指针还是有点陌生,所以我有几个问题
所以我有 Card
类,其中包含 getRank
、getSuit
以及两个 Card
对象的比较。
按照他们的方式,我设置套牌的等级是 1-13,花色是 1-4。所以这是一个简单的比较,将一张牌的等级+花色与另一张牌的等级+花色进行比较。
所以我像这样初始化并声明了两个数组:
char Rank[13] = {1,...13};
char Suit[4] = ...
我的方法是这样的:
char* getSuit(){ return Suit; }
char* getRank(){ return Rank; }
int Comp(Card *card) {
if (rank+suit < card->rank+card->suit)
return 1;
else if...
else ...
}
我的问题是,因为我只存储整数,所以使用 char 数组是不是一个坏主意? 稍后我计划将这些数字转换为输出“三叉戟”,这就是我使用 char 的原因。
我的另一个问题是,我的 get 方法看起来正确吗? get 方法,它会返回整个数组还是数组的索引,这正是我想要的。我是否正确使用了“->”?
我还在绘图过程中,这就是为什么我只有代码片段
最佳答案
->
会获取LHS引用的对象的RHS元素的值。所以是的,只要您处理的是 LHS 上的指针,这是正确的。
您可以考虑使用枚举。
正如@littleadv 所说,我建议再次查看您的评估逻辑。
关于c++ - 用 C++ 实现一副纸牌,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5257801/