c# 구조체 및 클래스에서 배열선언

처음 c#으로 프로젝트를 하면서
구조체 혹은 클래스에 배열을 넣고
메모리맵으로 올릴때 문제가 항상 발생했었죠.

byte[] 을 아무리 new 를 때리고 지정해도 4바이트만 잡히기 때문이었습니다..

무식하면 팔다리가 고생한다고... 고생좀 했었죠

MarshalAs(UnmanagedType.ByValArray, SizeConst = 8)]
public byte[] data;

요렇게 선언하면 byte 크기 * 8 만큼의 메모리가 할당됩니다.


using System.Runtime.InteropServices;

요거이 필수구요

댓글

댓글 쓰기

이 블로그의 인기 게시물

c# GDI+ 꺼져!! BufferedGraphics

c# 에서 C++ dll 사용하기

c# string 에서 mfc의 LPCTSTR간의 변환