Category Archives

Home >実行環境

実行環境

スポンサーサイト
...
--------
フリースタンディング環境
 C++の実行環境には、大きく分けて2種類があります。ホスト環境フリースタンディング環境の2種類です。ホスト環境は、OSの制御の下でプログラムが稼動する環境であり、フリースタンディング環境は、OSなしでプログラムが稼動する環境を指しますが、μITRONのような小規模なOSの環境も、現実的にはフリースタンディング環境であるといえます。Cにもホスト環境とフリースタンディング環境がありますが、CでもC++でも、フリースタン......
2005-07-26 | Comment : 0  | Trackback : 0 
実行時型識別のためのランタイム
 ランタイムについての最後の話題は、実行時型識別(RTTI)のためのランタイムです。実行時型識別のためのランタイムは大きく分けて2種類があります。ひとつはtypeidによって参照するstd::type_infoオブジェクトであり、もうひとつはdynamic_castに関わるものです。 typeidは、ちょうどsizeofのように型または式をオペランドにとる演算子です。sizeofは式を与えた場合でも、実際にその式が評価されることはありませんが、typeid......
2005-07-26 | Comment : 0  | Trackback : 0 
例外処理のためのランタイム
 例外処理機構は、ある意味でCとC++の間で最も大きな差異を作り出している要因であるといえます。例外処理機構は非常に強力な仕組みですが、C++のプログラムサイズが増大する最大の要因にもなっています。例外処理のためのランタイムには、std::terminate関数などの「目に見える」部分とtry/catch/throwといった基本構造を実現するための「目に見えない」部分に分かれます。特に、この「目に見えない」部分は、処理系によって実装......
2005-07-25 | Comment : 0  | Trackback : 0 
動的メモリ管理のためのランタイム
 動的メモリ管理のためのランタイムというのは、早い話がnewおよびdelete演算子とその関連部分のことです。new演算子はmallocを使って実装されることが多いため、newを使うためにはmallocやfreeといった外部ライブラリも必要になります。mallocやfreeといった、動的なメモリ割付け・解放を行うために直接必要な機能の他に、割付けに失敗した場合に必要になる例外処理やハンドラに関するランタイムも同時に必要になります。newおよ......
2005-07-25 | Comment : 0  | Trackback : 0 
プログラムの起動と終了のためのランタイム
 プログラムの起動と終了のためのランタイムは、主としてスタートアップから呼び出すことになります。処理系によってはサブルーチン化しておらず、直接必要な処理を自分で記述しなければならない場合もあります。具体的には、main*1が呼び出される前に非ローカルオブジェクト(関数の外で宣言されたオブジェクト)を構築し、mainからリターンした後に静的記憶域のオブジェクトを解体します。自動記憶域のオブジェクトの構築・解体......
2005-07-25 | Comment : 0  | Trackback : 0 

C++と組み込み環境 | Page Top▲

Navigation
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。