C#中使用的指针在哪里?

时间:2014-05-23 00:39:29

标签: c# pointers

我对C#环境很陌生,我已经用C ++编写了一段时间了。究竟哪一个会在C#中使用指针?是否建议在C#中使用指针?

2 个答案:

答案 0 :(得分:4)

您可以使用指针,但仅限于"不安全"模式。你永远不会在正常的C#编码中使用它们。

所有类都继承自Object并被称为"参考"类型。这些类型由引用传递,它主要只是引擎盖下的指针,并隐藏程序员的任何细节,如地址。

这些是你的指针"但是你永远不会删除它们,因为C#中的所有东西都是垃圾收集的,你可以像访问对象一样访问它们(没有 - >运算符)。

intdoublechar等类型是"价值"类型并按值传递(就像在C ++中一样)。您也可以通过引用传递这些内容,但在调用时必须使用函数签名中的ref关键字。

struct是另一个特殊情况,它是"价值"类型。 MSDN

答案 1 :(得分:3)

你可以在C#中实际使用指针的唯一地方是不安全的代码区域,这通常是不受欢迎的。其余的时间,运行时将为您管理内存。