Computer >> Máy Tính >  >> Lập trình >> C#

Sự khác biệt giữa Boxing và Unboxing trong C #

Boxing chuyển đổi loại giá trị thành một loại đối tượng trong khi unboxing chuyển đổi loại đối tượng thành loại giá trị.

Hãy để chúng tôi thấy sự khác biệt giữa Boxing và Unboxing trong C #.

Bộ nhớ

Trong quyền anh, giá trị được lưu trữ trên ngăn xếp được sao chép sang đối tượng được lưu trữ trên bộ nhớ heap, trong khi việc mở hộp thì ngược lại.

Trong Mở hộp, giá trị của đối tượng được lưu trữ trên bộ nhớ heap được sao chép sang loại giá trị được lưu trữ trên ngăn xếp.

Chuyển đổi

Mở hộp có chuyển đổi rõ ràng trong khi quyền anh có chuyển đổi ngầm.

Ví dụ

int a = 10;
object obj = a;  // boxing
int b = (int) ob; // unboxing