Có thể khởi tạo thành viên tham chiếu thành NULL bằng C++ không?
Tôi đang cố gắng một cái gì đó như thế này:Khởi tạo tham chiếu đến thành viên thành NULL bằng C++
class BigClass
{
private:
Object m_inner;
public:
const Object& ReadOnly;
BigClass() : ReadOnly(NULL)
{
Do stuff.
}
};
Tôi biết tôi có thể làm điều này nếu tôi khởi tạo "ReadOnly" tới tài liệu tham khảo thực sự của một đối tượng, nhưng khi tôi muốn đặt ở đó "NULL", tôi gặp lỗi:
"cannot convert from 'int' to 'const Object &'
Làm cách nào để giải quyết vấn đề này?
Điểm tham chiếu là làm điều này là không thể. Thay vào đó, hãy sử dụng con trỏ thông thường. –
Bạn có thể làm điều này { const Object & ReadOnly = \ * (Object \ *) NULL; } Nhưng tính cách của nó. Bộ xử lý trước chỉ cần xóa & & \ * – Justin
@Justin "_Bộ xử lý trước chỉ xóa bỏ & và * _" vô nghĩa – curiousguy