C# · 12月 27, 2021

C#使用 – >指针符号?

@H_502_0@我正在尝试学习C#,我熟悉C结构指向符号 – >如果跨越C#,我很好奇.

例:

someStruct->someAttribute += 1;解决方法 C#中有指针符号,但在特殊情况下,使用不安全的关键字.

常规对象被使用取消引用,但如果要编写快速代码,则可以将数据引导(以避免垃圾收集器移动垃圾内容),从而“安全”使用指针算术,然后可能需要 – >.

请参阅Pointer types (C# Programming Guide),并在this example上略有下降 – >在C#中.

它看起来像这样(从最后一个链接):

struct MyStruct { public long X; public double D; }unsafe static void foo() { var myStruct = new MyStruct(); var pMyStruct = & myStruct; // access: (*pMyStruct).X = 18; (*pMyStruct).D = 163.26; // or pMyStruct->X = 18; pMyStruct->D = 163.26;}