English 中文(简体)
如何做饭。 ReadInt32等人与不安全的环境和点人不同?
原标题:How does Marshal.ReadInt32 etc. differ from unsafe context and pointers?

Particularly: Is Marshal safer? Are pointers faster?

int pixel = Marshal.ReadInt32(bitmapData.Scan0, x * 4 + y * bitmapData.Stride);
int pixel = ((int*)bitmapData.Scan0)[x + y * bitmapData.Stride / 4];
最佳回答

没有任何区别。 请从<代码>中查阅该代码。 Mamaal.ReadInt32 你们会看到使用点人做同样的事。

唯一的好处是,你不必明确允许不安全的法典。 红十字与红新月联会,你还要求“全图瓦卢”实施不安全的法典,这样可能就是一个考虑因素。

问题回答

我个人喜欢使用<代码>Marshal<>/code>,主要是因为我没有安全守则。 至于速度越快,我不敢肯定,但我确信,如果你这样做的话,用六氯代苯操作六氯苯可能会放缓。 最好把整个扫描线读为C#阵列,并在此基础上开展工作。





相关问题
Anyone feel like passing it forward?

I m the only developer in my company, and am getting along well as an autodidact, but I know I m missing out on the education one gets from working with and having code reviewed by more senior devs. ...

NSArray s, Primitive types and Boxing Oh My!

I m pretty new to the Objective-C world and I have a long history with .net/C# so naturally I m inclined to use my C# wits. Now here s the question: I feel really inclined to create some type of ...

C# Marshal / Pinvoke CBitmap?

I cannot figure out how to marshal a C++ CBitmap to a C# Bitmap or Image class. My import looks like this: [DllImport(@"test.dll", CharSet = CharSet.Unicode)] public static extern IntPtr ...

How to Use Ghostscript DLL to convert PDF to PDF/A

How to user GhostScript DLL to convert PDF to PDF/A. I know I kind of have to call the exported function of gsdll32.dll whose name is gsapi_init_with_args, but how do i pass the right arguments? BTW, ...

Linqy no matchy

Maybe it s something I m doing wrong. I m just learning Linq because I m bored. And so far so good. I made a little program and it basically just outputs all matches (foreach) into a label control. ...

热门标签