『スラスラわかるC#』補足資料2 読書メモ

スラスラわかるC# (Beginner’s Best Guide to Programmin)

unsafe

C#では、プロジェクトの設定でアンセーフコードの許可を行い、かつ、unsafeキーワードによって囲まれたブロックに限って、以下の機能を使用できる。

  • ポインター
  • 配列の静的確保(stackalloc)
  • sizeof演算子
  • アドレス固定(fixed)

これらの機能は、以下の条件を満たすアンマネージド型に限って利用できる。

  • 値型である
  • 構造体の場合、アンマネージド型のみをメンバーに含むこと
  • ジェネリックではないこと

プラットフォーム呼び出し(Platform Invoke, P/Invoke)

C#からネイティブの機能を呼び出す方法には、DllImportとCOMオブジェクトがある。

DllImport

DllImport属性を付けた静的メソッドを作成すると、DLL中のネイティブ関数を呼び出すことができる。外部で定義された関数を参照するには、メソッドにextern修飾子をつける。

COM参照

.NET Framework以前にあった、コンポーネント間の連携の仕組みにCOM(Component Object Model)がある。COM参照を使用することで、C#で作成したアプリケーションからInternet ExplorerやExcelを呼び出すことができる。

補足資料2は本当に補足という感じ。…といいつつ、DllImportとかは実案件だと割と使いそう。

コメントを残す