我现在正在学习 C# refs。
假设所有分配有 new 的变量都是引用而不是值是否安全?
例子:
SomeType variable = new SomeType()
不:
例如,System.Drawing.Point
is a struct
not a class
:
Point point = new Point(1, 1); //point is a value, not a reference
C# 有两种类型的对象 - 引用类型(使用 class 关键字定义)和值类型(使用 struct 关键字定义)。
拿起一本关于 C# 的好书了解更多细节。它是一个重要的概念。
不,值类型不是引用。
但是对于任何其他非值类型和“ref/out”参数,它们都是引用。
不。在 C# 中,结构也使用 new() 进行实例化,但被视为值。
看起来您将引用与对象混淆了。如果是这种情况,那么使用 new 关键字创建的类型是对象。被视为值的结构除外。
不必要。随着您对 C# 的深入了解,您会发现有类(引用类型)和结构(值类型)。它们都通过使用'new'关键字来实例化,但结构的实例不是引用。