对于一个arduino项目,我试图使用一个包含这样的代码的库。将一个int传递给一个期待枚举数据类型的函数
typedef enum
{
NOT_SPECIFIED = 0,
MALE = 1,
FEMALE = 2
} gender;
,有一个功能
void findCustomer(const char* userName, gender g);
在我自己的代码,我让用户输入通过一个网络接口这些信息,我保存的性别项作为一个int。后来,我想拨打findCustomer
,但是如果我传递一个int作为第二个参数,它会给我一个错误。为了解决这个问题,有什么具体的数据类型,我应该用它来保存客户的输入,所以我可以将它传递给findCustomer
'int i,switch(i)'做出选择。 – macroland
是的,你可以使用开关或使用static_cast(1)如果你确定valuse传递是(0,1,2)。 –
user1438832