[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 4)]什么意思?什么是托管代码?非托管代码?她们之间怎

什么是托管代码?非托管代码?它们之间怎么传的?!

托管代码指的是必须依靠.NET框架解释运行的代码,非托管代码一般指的是传统的不需要借助.NET框架解释的代码。在.NET出现之前,如VB,C++,DELPHI编写的程序都是非托管代码。
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 4)]
MarshalAs属性指示如何在托管代码和非托管代码之间封送数据。
很多时候我们想直接在.NET中调用我们以前写好的非托管程序或组件,这样就会出现托管代码与非托管代码之间互相调用,数据交换的问题,而MarshalAs语法就是定义非托管数据类型与大小的。
温馨提示:答案为网友推荐,仅供参考
相似回答