[英]How to reference the int variable to another script which is in another GameObject in Unity?
[英]Would an int variable containing another int variable be considered a reference type?
我知道值類型直接保存值(int,bool等),而引用類型(如類)保存對值存儲位置的引用。 我還沒有在其他有關引用和值類型的帖子中找到此特定問題的答案。
int x = 10;
int y = x;
// Would y be considered a reference type?
我之所以這樣問,是因為“ int x”是值類型,“ y”並不直接持有值,而是“引用”“ x”(內存中的另一個位置)。
將
y
被認為是引用類型?
沒有。
引用類型與值類型是類型本身的屬性,而不是該類型的任何變量。 類型int
是一個值類型; 因此,所有int
類型的變量都是值類型的變量。
在您的特定情況下,為y
分配x
的值后,它將獲得該值的副本 ,而不是對其的引用。 x
和y
的值可以彼此獨立分配。 如果隨后更改x
,則y
的值將保持不變:
int x = 10;
int y = x;
x = 5;
Console.WriteLine(y); // Prints 10
相反,引用類型為“ track”的變量將更改為它們引用的對象:
StringBuilder x = new StringBuilder("Hello");
StringBuilder y = x;
x.Append(", world");
Console.WriteLine(y); // Prints "Hello, world"
我之所以這樣問,是因為“ int x”是值類型,“ y”並不直接持有值,而是“引用”“ x”(內存中的另一個位置)。
y
不引用x
。 對於值類型,賦值(通過=
運算符)意味着將 值從右側的變量復制到左側的變量。
對於引用類型,這意味着復制引用 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.