C#中的指针问题。
下面代码用了指针,可是抱出两个错误。
错误如下。
G:\NETLightX\DataProcess\ReceiveData32.cs(21): 无法获取托管类型(“NETLightX.DataProcess.ReceiveData32.my”)的变量地址或大小
G:\NETLightX\DataProcess\ReceiveData32.cs(21): 只能获取固定语句初始值设定项内的未固定表达式的地址
我在编译器里的设置里面选了允许不安全代码,而且又选了允许不安全代码调试,应该没有什么可以在设置的吧,可是为什么编译的时候就抱错了???。为什么说我那个结果是托管类型。我都加unsafe 了,不安全代码也加了,倒低错在什么地方,不管定向不定向,编译应都编译不过去啊。请高手指教!!!!!!!!!!!!!!!
using System;
namespace NETLightX.DataProcess
{
/// <summary>
/// ReceiveData32 的摘要说明。
/// </summary>
public unsafe class ReceiveData32 : IDisposable
{
unsafe struct my
{
unsafe string a;
}
my MYs = new my();
//My = &MYs;
public void aaa()
{
my *My = &MYs;
}
public ReceiveData32()
{
}
public void Dispose()
{
Dispose();
GC.SuppressFinalize(true); // as a service to those who might inherit from us
}
}
}