如何设置枚举类型提示的默认值,我尝试将其设置为0或1,或者什么都没有,但出现相同的错误?
enum tip {
pop,
rap,
rock
};
class Pesna{
private:
char *ime;
int vremetraenje;
tip tip1;
public:
//constructor
Pesna(char *i = "NULL", int min = 0, tip t){
ime = new char[strlen(i) + 1];
strcpy(ime, i);
vremetraenje = min;
tip1 = t;
}
};
最佳答案
您必须将其设置为enum
值之一,例如:
Pesna(char *i = "NULL", int min = 0, tip t = pop)
// ^^^^^
另一种技术是使用在
Default
本身中声明的enum
值并使用该值。如果您以后改变主意,这将使设置默认值变得更加容易:enum tip {
pop,
rap,
rock,
Default = rap, // Take care not to use default, that's a keyword
};
Pesna(char *i = "NULL", int min = 0, tip t = Default)
// ^^^^^^^^^
关于c++ - 如何设置枚举类型变量的默认值?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39146877/