#Khác nhau do phân vùng bộ nhớ cho từng biến của Class
#Bạn nên đọc kĩ về khái niệm : Enum,Union và Struct ^^
Thứ tự các biến trong lớp lại có ảnh hưởng đến kích thước lớp. Cái này mình mới được biết, nhưng nguyên nhân tại sao thì chưa. Ví dụ, mình có 2 lớp A & B có các thuộc tính giống nhau và chỉ khác thứ tự khai báo:
Code:class A { bool a; int b; int c; bool d; }khi đó, nếu gọi:Code:class B { bool a; bool b; int c; int d; }
x = sizeof(A);
y = sizeof(B);
thì x và y khác nhau, cụ thể, x > y.
Bạn nào biết nguyên nhân tại sao, giải thích chi tiết giúp mình với. Xin cảm ơn.
<Xaì thẻ CODE plz>
Đã được chỉnh sửa lần cuối bởi Xcross87 : 20-05-2007 lúc 02:40 PM. Lý do: <Xaì thẻ CODE plz>
#Khác nhau do phân vùng bộ nhớ cho từng biến của Class
#Bạn nên đọc kĩ về khái niệm : Enum,Union và Struct ^^
None!
Cậu đang dùng C/C++ compiler nào, printf("%d\n", sizeof(bool)) = bao nhiêu. Đây gọi là align/padding đấy.
vấn đề này pót nhiều rồi.bạn có thể vào quantrimang.com(hình như phần ebook)