Theo quy tắc nghiêm ngặt răng cưa:char * chuyển đổi và răng cưa quy tắc
struct B { virtual ~B() {} };
struct D : public B { };
D d;
char *c = reinterpret_cast<char*>(&d);
Một char*
cho bất kỳ đối tượng kiểu khác nhau là hợp lệ. Nhưng bây giờ câu hỏi là, nó sẽ trỏ đến cùng một địa chỉ của & d? những gì là đảm bảo được thực hiện bởi C + + Standard rằng nó sẽ trả về cùng một địa chỉ?
Tôi nghĩ rằng hàm hủy của bạn bị đặt tên sai –
Tôi không biết câu trả lời. Nhưng, khi nào thì kiến thức này ** bao giờ ** có ích trong thực tế? –
Câu hỏi hay. Một số phôi thực sự có thể thay đổi địa chỉ (ví dụ: khi có nhiều lần thừa kế).Tôi tự hỏi nếu đó là trường hợp. – Kos