「ライブラリの基礎 - C++DLL」の版間の差分

ナビゲーションに移動 検索に移動
279行目: 279行目:
           SampleFunc04(structHoge);
           SampleFunc04(structHoge);
   
   
          // SampleStruct2構造体のサイズを取得する
          // 指定サイズ分だけメモリ領域を確保して、その先頭アドレスをstructPiyoに格納する
           var structPiyo = Marshal.AllocHGlobal(Marshal.SizeOf(typeof(SampleStruct2)));
           var structPiyo = Marshal.AllocHGlobal(Marshal.SizeOf(typeof(SampleStruct2)));
           try
           try
           {
           {
             SampleFunc05(structPiyo);
             SampleFunc05(structPiyo);
            // 受け取ったstructPiyoからSampleStruct2構造体の情報に構築し直す
             var structFuga = (SampleStruct2)Marshal.PtrToStructure(structPiyo, typeof(SampleStruct2));
             var structFuga = (SampleStruct2)Marshal.PtrToStructure(structPiyo, typeof(SampleStruct2));
             for (int i = 0; i < structFuga.length; i++)
             for (int i = 0; i < structFuga.length; i++)
匿名利用者

案内メニュー