Embedded C
表示
Embedded C (エンベデッドシープラスプラス、エンベッディドシープラスプラス)はプログラミング言語の一種である。EC と略記される。
特徴
[編集]1990年代後半、組み込み用途への適用を目指して、肥大化したC の仕様を必要最低限のものに絞り込んだサブセットが考案された。
一般的には、Embedded C を用いた場合、C よりプログラムをコンパクトにできる傾向がある。これは主に例外処理や実行時型情報に関わるランタイムとデータが減少するためである。
C から削減された機能
- テンプレート
- 例外処理
- 実行時型情報
- 多重継承
- 名前空間
- ワイド文字ライブラリ
- 新しい型変換の演算子(const_cast, dynamic_cast, reinterpret_cast, static_cast)
- mutable(const修飾の付いたオブジェクトのメンバ変数を変更可能にする)
C のサブセットという位置付けから、Embedded C で記述されたソースコードがそのままC でも利用できることを目指したが、その目標は必ずしも達成されていない。
C との互換性を妨げる要因には以下のものがある。
- 名前空間がサポートされないため、シンタックス(文法)が統一できない。具体的には、size_t型を使う場合に、C ではstd::size_tと記述し、Embedded C では単にsize_tと記述しなければならない。
- 例外処理をサポートしないため、Embedded C で記述されたプログラムは例外安全に配慮されていないが、C ではそうした設計には問題がある。
- 組み込み用途ということから、フリースタンディング環境を対象とすることになるが、Embedded C にはC のフリースタンディング環境ではサポートされないライブラリ機能が多く存在する。