.Net 指针使用以及在栈上创建引用对象

在.Net 最好不要使用指针,因为会因为内存的事情,很麻烦,其实也很少有人愿意使用它,毕竟学c语言的时候,都快晕死了,各种各样的指针,能把你指晕很多次,但是使用指针,效率还是听可以的,毕竟api用c写的,怎么使用呢

使用之前,得先把代码块写成unsafe的,

int* width,heigh;

感觉和c语言差不多的吗

api就是c语言的,当然可以直接用了,,如果忘了的话,,还是回去看看C语言吧

我们知道引用类型的一般都是在堆上,堆的效率没有栈的效率高,但是我们想要在栈上见一个引用对象怎么办呢,net支不支持这个功能呢,肯定是支持的了不过需要使用关键字stackalloc

decimal * arr=stacklloc decimal[10]

不定长数组

int length=20

decimal * arr=stacklloc decimal[length]

访问数组第一个元素  *arr=10.0; 第二个*(arr+1)=20.0

c#数组的arr【0】就是会被解析*arr

原文地址:https://www.cnblogs.com/http-www/p/3511427.html