我正在练习C++来增强我的技能。我想构建一副牌,并在传入字符串列表时对其进行过滤
{"3c","Js","2d","10h","Kh","8s","Ac","4h"}
过滤后会返回
{"2d"、"8s"、"Js"、"3c"、"Ac"、"4h"、"10h"、"Kh"}
我已经创建了一个名为card_t的结构作为
struct card_t
{
enum class rank_t: unsigned char
{
two = 2,
three = 3,
four = 4,
five = 5,
six = 6,
seven = 7,
eight = 8,
nine = 9,
ten = 10,
jack = J,
queen = Q,
king = K,
ace = A
};
enum class suit_t: unsigned char
{
h,
d,
c,
s
};
};
我的编译器不喜欢rank_t的设置方式,我不知道为什么。如有任何反馈,我们将不胜感激。
这似乎是一个常见的问题,快速搜索就会发现,它似乎在做你想做的事情:http://www.cplusplus.com/forum/beginner/219420/
如果你正在练习CPP,最好的方法是学习使用CPP的STL公共数据结构和算法库。它们是针对性能进行优化的强大工具。更不用说它们非常常见,我想说这是一个"专业"程序员的标志。