【C++】プラグマ / Pragma

【C++】
プラグマ / Pragma




「プラグマ」とは

「プラグマ」とは、コンパイラに特定の情報を渡すために使用するコンパイラ指令
プラグマを使用すると、コンパイル内容を詳細に渡って制御できる。
プラグマは、「指令」とも呼ばれる。
プラグマは、C++ 標準の一部ではない。



プラグマの書式

  • #pragma keyword
  • #pragma keyword (a [ , a] ... )[ , keyword ( a [, a ] ... )] ,...
  • #pragma sun keyword



プラグマ一覧

alignデフォルトを無効にして、パラメータ変数のメモリー境界を指定したバイト境界に揃えます。
init指定した関数を初期化関数にします。
fini指定した関数を終了関数にします。
ident実行可能ファイルの .comment 部に、指定した文字列を入れます。
pack (n)構造体オフセットの配置を制御します。n の値 は、すべての構造体メンバーに合った最悪の場合の境界整列を指定する数字で、0、1、2、4、8 のいずれかにします。
unknown_control_flow手続き呼び出しの通常の制御フロー属性に違反するルーチンのリストを指定します。
weak弱いシンボル結合を定義します。



#pragma once

コンパイラ用の命令
複数のファイルからインクルードされるたびに呼び込まれると宣言が重複してしまい、パフォーマンス的にも良くないため、ヘッダファイルを1回だけ処理させる。