C++とは


オブジェクト指向C言語

C++とはオブジェクト指向型プログラミングのために生まれたC言語です
C言語の拡張版のような言語で、JAVAと大きくちがうのはC言語との互換性を保っていることです
比較的大規模な、かつ複雑なプログラミングに適している言語です

C言語に比べファイルサイズが大きくなり、パフォーマンスの低下が見られますが
それでもインタプリンタ言語に比べると高速な処理を可能にします
何より、オブジェクト指向型言語なので高い保守性を誇ります
C言語に比べ、大規模システムの開発に向き、拡張やデバッグが容易です

C++はC言語との互換性が重視されて作られた言語です
そのためC++はC言語の関数やキーワードを受け入れ、C++でC言語を使うことができます
一部正常に動作しない関数などの存在があるようですが(コンパイラによって異なる)基本的にC++のなかでC言語を使えます

以上のことからCプログラマはC++へ移行する事に対してメリットが多くあるはずです
基本的な記述はC言語と変わらないのでCプログラマは比較的容易にC++を習得できるはずです
また、オブジェクト指向未経験者はC言語経験者ならばJavaよりも比較的容易に習得できるでしょう
さぁ、C++を学習してC/C++プログラマの道を目指しましょう


コンパイラ

C言語同様に、C++も標準化より以前の古いC++と
ANSI/ISOで標準化されたC++があり、最近のコンパイラは全て後者をサポートしています
古いコンパイラでは、一部この講座のサンプルはコンパイルできません

コンパイラは、Microsoft社の「Visual C++」などがあります
総合開発環境を用いてもかまいませんし、メモ帳などのエディタを用いてもかまいません
記述したソースを*.cppという拡張子にしてコンパイルしてください
詳しいコンパイル方法は、コンパイラ付属の説明書をご覧ください


C言語初心者なら

基本的にこの講座はC言語の経験者を想定しています
実用レベルの知識までは必要としませんが、最低でもポインタや構造体
自作関数の作り方や基本的な変数の宣言
メモリアドレスなどの知識があるということが条件です

C言語の基礎を学ばれてからC++を学習してください

よくある話、CとC++どっちを勉強すればよいですかという質問が多いです
酷な話ですが両方覚えなさいと筆者は心から叫びたい
やはり、多くの専門家が「できるだけ多くの言語を学習するべきである」というのに賛同である
1つの言語だけ熟知するのも大切だが、固執せずに多くの言語を学習することで
コンピュータアーキテクチャの本質を学習し、プログラムの本質を知ることができるのです

こと、CとC++は別物とは考えず同じ言語であると考えてもかまいません
Cを学習することはC++へのステップであり、C++を学習することはCを知るに等しいのです
一方の知識がかけていても、C/C++プログラマとしては不自由を覚えることでしょう



戻る次のページへ