我对C#环境很陌生,我已经用C ++编写了一段时间了。究竟哪一个会在C#中使用指针?是否建议在C#中使用指针?
答案 0 :(得分:4)
您可以使用指针,但仅限于"不安全"模式。你永远不会在正常的C#编码中使用它们。
所有类都继承自Object
并被称为"参考"类型。这些类型由引用传递,它主要只是引擎盖下的指针,并隐藏程序员的任何细节,如地址。
这些是你的指针"但是你永远不会删除它们,因为C#中的所有东西都是垃圾收集的,你可以像访问对象一样访问它们(没有 - >运算符)。
int
,double
和char
等类型是"价值"类型并按值传递(就像在C ++中一样)。您也可以通过引用传递这些内容,但在调用时必须使用函数签名和中的ref
关键字。
struct
是另一个特殊情况,它是"价值"类型。 MSDN
答案 1 :(得分:3)
你可以在C#中实际使用指针的唯一地方是不安全的代码区域,这通常是不受欢迎的。其余的时间,运行时将为您管理内存。