来自主要来自python的背景,我在使用C ++类型方面有些挣扎。
我试图通过几个采用不同类型作为参数的重载构造函数之一来初始化类变量。我已经读到使用auto
关键字可以用于变量的自动声明,但是在我的情况下,直到选择构造函数后,它才会被初始化。但是,编译器对不初始化并不满意value
。
class Token {
public:
auto value;
Token(int ivalue) {
value = ivalue;
}
Token(float fvalue) {
value = fvalue;
}
Token(std::string svalue) {
value = svalue;
}
void printValue() {
std::cout << "The token value is: " << value << std::endl;
}
};
在python中,它可能看起来像:
class Token():
def __init__(self, value):
self.value = value
def printValue(self):
print("The token value is: %s" % self.value)
auto
在这种情况下使用关键字的正确方法是什么?我是否应该完全使用其他方法?
auto
班级成员吗?相关但过时的问题:是否可以有一个“自动”成员变量?