‫Chào mừng trở lại.
‫Trong video này, chúng ta sẽ xem xét sự khác biệt giữa loại giá trị và loại tham chiếu.
‫Vì vậy, các kiểu dữ liệu có thể được phân loại thành hai loại dựa trên cách chúng chiếm vị trí bộ nhớ.
‫Và chúng ta sẽ xem xét các loại đó một cách chi tiết.
‫Vì vậy, trước hết, chúng ta xem xét kiểu giá trị.
‫Vì vậy, như tên cho thấy, nó là một kiểu dữ liệu khi được khai báo và gán một giá trị, giữ giá trị đó trực
‫tiếp trên không gian bộ nhớ của chính nó.
‫Được rồi.
‫Vì vậy, kiểu giá trị sử dụng một heap để lưu trữ ví dụ giá trị của các kiểu giá trị là các kiểu dữ
‫liệu như int float long double char bool decimal double.
‫Vì vậy, về cơ bản các kiểu dữ liệu đơn giản ngay bây giờ chúng ta hãy xem biểu diễn bằng hình ảnh của một kiểu giá trị.
‫Vì vậy, giả sử chúng ta tạo một biến mới có tên là Z và nó có giá trị là 234.
‫Vì vậy, bây giờ giá trị 234 này sẽ được lưu trữ trong RAM tại vị trí của biến Z này.
‫Được rồi.
‫Và sau đó nếu chúng ta nhìn vào kiểu tham chiếu chi tiết hơn, chúng ta có thể thấy rằng
‫nó là kiểu biến thay vì lưu giá trị trực tiếp trong bộ nhớ, chỉ lưu vị trí bộ nhớ của dữ liệu thực tế.
‫Biến ở đây lưu trữ tham chiếu bộ nhớ của dữ liệu chứ không phải dữ liệu trực tiếp.
‫Đây là sự khác biệt rất lớn.
‫Đúng?
‫Vì vậy, các kiểu dữ liệu tham chiếu là mảng lớp chuỗi, về cơ bản là các kiểu dữ liệu phức tạp hơn và cần nhiều không gian
‫hơn, có thể nói như vậy.
‫Điều này được thực hiện để tiết kiệm tài nguyên và làm cho chương trình của chúng tôi nhanh nhất có thể, bởi vì sau đó chúng
‫tôi không cần phải lấy giá trị và di chuyển giá trị đó mọi lúc.
‫Nhưng chúng tôi chỉ có thể nói, được rồi, giá trị nằm ở vị trí đó, vì vậy bạn có thể lấy nó từ đó
‫thay vì sau đó, chẳng hạn sao chép dữ liệu đó khi chúng tôi sử dụng nó.
‫Được rồi.
‫Vì vậy, khi chúng ta sao chép kiểu tham chiếu này của một kiểu dữ liệu, nó sẽ chỉ sao chép địa chỉ bộ nhớ của dữ liệu.
‫Vì vậy, sau đó chúng ta sẽ có hai biến trỏ đến cùng một dữ liệu.
‫Vì vậy, chúng ta hãy nhìn vào biểu diễn hình ảnh ở đây.
‫Vì vậy, chúng ta có chuỗi này được gọi đầu tiên là Dennis, sau đó chúng ta có địa chỉ giá trị biến và
‫sau đó là giá trị thực.
‫Vì vậy, bạn có thể thấy ở đây rằng.
‫Giá trị này ở đây chỉ là địa chỉ mà bạn có thể thấy ở đây, nhưng địa chỉ của tên biến ở
‫đây.
‫Vì vậy, địa chỉ giá trị thay đổi và giá trị thực được lưu trữ ở hai vị trí khác nhau trong RAM của bạn.
‫Vì vậy, về tổng thể, địa chỉ giá trị biến là siêu ngắn.
‫Nó thực sự chỉ là một con số rất cơ bản, đúng.
‫Nhưng mặt khác, giá trị thực tế có thể khá phức tạp.
‫Vì vậy, nó có thể là một đối tượng khá phức tạp và có rất nhiều thông tin được lưu trữ trong đó.
‫Và đó là lý do tại sao tốt hơn cho các chương trình của chúng tôi sử dụng cách tiếp cận này hoặc cho C sharp nói chung.
‫Vì vậy, giả sử bạn đi thuê xe, vì vậy bạn muốn lấy một chiếc ô tô.
‫Đúng.
‫Vì vậy, bạn đi đến chỗ thuê xe và sau đó bạn có mặt tại quầy và bạn muốn nhận chiếc xe mà bạn
‫đã đặt.
‫À, quầy không có xe của bạn, nhưng nó có vị trí của xe của bạn.
‫Vì vậy, nó sẽ cung cấp cho bạn chìa khóa và nó sẽ cho bạn biết, hãy đi theo hướng này và bạn sẽ tìm thấy chiếc
‫xe ở hàng so, cột, so-and-so hoặc sàn, bất cứ điều gì.
‫Vì vậy, sau đó bạn có thể chỉ cần đến đó và bạn có thể nhận được xe của bạn.
‫Vì vậy, thay vì cất ô tô bên trong quầy, điều này sẽ không hiệu quả vì ô tô quá lớn, họ có
‫tất cả các tài liệu tham khảo này về vị trí ô tô để bạn có thể dễ dàng lấy chúng, mặc dù ví dụ
‫này thiếu một chút phần còn lại của sự phức tạp mà chúng ta có ở đây.
‫Nhưng có thể điều này sẽ giúp bạn hiểu rõ hơn về loại tham chiếu.
‫Được rồi.
‫Vì vậy, đó là nó cho bây giờ.
‫Hãy quay lại với Cody.
‫Hẹn gặp lại các bạn trong video tiếp theo.