đến từ một nền tảng chủ yếu là python Tôi đã phải vật lộn với việc làm việc với các loại trong C ++.
Tôi đang cố gắng khởi tạo một biến lớp thông qua một trong số các hàm tạo bị quá tải, lấy các loại khác nhau làm tham số. Tôi đã đọc được rằng sử dụng auto
từ khóa có thể được sử dụng để tự động khai báo một biến, tuy nhiên trong trường hợp của tôi, nó sẽ không được khởi tạo cho đến khi một hàm tạo được chọn. Tuy nhiên, trình biên dịch không hài lòng về việc không khởi tạo 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;
}
};
Trong python điều này có thể trông giống như:
class Token():
def __init__(self, value):
self.value = value
def printValue(self):
print("The token value is: %s" % self.value)
Cách sử dụng auto
từ khóa đúng trong kịch bản này là gì? Tôi có nên sử dụng một cách tiếp cận khác nhau hoàn toàn?
auto
cho các thành viên lớp học? Câu hỏi có liên quan nhưng đã lỗi thời: Có thể có biến thành viên tự động của ED không?