C++

用語の解説

C++とは

(シープラスプラス,シープラプラ,C++言語,C with Classes,C Plus Plus,C++ programming language,)
C++とは、AT&Tベル研究所のビャーネ・ストロヴストルップにより、C言語の拡張仕様として作成された、コンパイル型の汎用プログラミング言語のことである。
C++では、C言語にクラス定義のようなオブジェクト指向プログラミングの要素が追加された言語仕様となっている。 C言語との下位互換性を保っているため、C言語でできることは全てC++でも実現可能である。 C++は実行時に型が決定されている静的な型システムを用いているため、SmalltalkやRubyのような他の純粋なオブジェクト指向言語と比べて、柔軟性には欠けるものの、実行速度は低下しにくい、という性質を持つ。 C++は多機能かつ汎用的であり、それまでC言語が採用されていた領域をカバーできることに加えて、オブジェクト指向の特徴であるプログラムの再利用性が活用できるため、大規模な開発にも適しているとされる。 C++は、オペレーティングシステム(OS)をはじめとするシステムプログラムから、組み込みシステム、デスクトップアプリケーションなど、多様な用途において採用されている。 例えば、Windowsのアプリケーションにおいては、Visual BasicやC#と並び、C++がアプリケーション記述用の主要な言語となっている。 C++は、C言語の機能に加えて、クラス定義、多重継承、仮想関数、多様性、メソッドの多重定義、テンプレート(総称プログラミング)、例外処理、といった機能が追加されている。 とりわけ多重継承をサポートしている点は大きな特徴であると言える。 SmalltalkやJavaなどのオブジェクト指向のプログラミング言語では、単一継承と呼ばれ、一つの親クラスしか定義できない仕様になっているが、C++では多重継承により、あるクラスの親クラスを複数持つことが可能となっている。 通常C++のソースファイルの拡張子には「.cpp」が、同じくインクルードされるヘッダファイルの拡張子には「.hpp」が付く。 C++は、1980年前後に、C言語をベースに、Simulaのクラス機能を追加したプログラミング言語として開発された。 当初の名称は「C with Classes」といった。 C++の処理系は当初、C言語に対するプリプロセッサとして作成されたため、C++のソースコードを処理すると、C言語のソースコードを吐き出す形となっていた。 C++は1998年にISO/IEC 14882:1998、2003年にISO/IEC 14882:2003として標準化されている。 なお、C++のテンプレート機構を用いたコンテナとアルゴリズムを実装した標準ライブラリとしてはSTL(Standard Template Library)が規定されており、またC++標準にも影響を与えている強力なライブラリとしてBoost C++ Librariesがある。 C++は、その仕様の規模の大きさや複雑さから、マスターするのが最も困難な言語の一つとされる。 それゆえ、熱烈な支持者も多い。 他面、C++における反省が、よりスマートなオブジェクト指向言語としてのJavaやC#の誕生を促したとも言われている。

用語解説出典   powered by. Weblio

ホワイトペーパー

新着

ランキング

  1. セキュリティ

    従来型のセキュリティでは太刀打ちできない「生成AIによるサイバー攻撃」撃退法のススメ

  2. セキュリティ

    マンガでわかる脆弱性“診断”と脆弱性“管理”の違い--セキュリティ体制の強化に脆弱性管理ツールの活用

  3. セキュリティ

    クラウドセキュリティ管理導入による投資収益率(ROI)は264%--米フォレスター調査レポート

  4. セキュリティ

    情報セキュリティに対する懸念を解消、「ISMS認証」取得の検討から審査当日までのTo Doリスト

  5. セキュリティ

    ISMSとPマークは何が違うのか--第三者認証取得を目指す企業が最初に理解すべきこと

ZDNET Japan クイックポール

所属する組織のデータ活用状況はどの段階にありますか?

NEWSLETTERS

エンタープライズコンピューティングの最前線を配信

ZDNET Japanは、CIOとITマネージャーを対象に、ビジネス課題の解決とITを活用した新たな価値創造を支援します。
ITビジネス全般については、CNET Japanをご覧ください。

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]