C++

動的メモリ確保・管理

C++ new 2次元配列の使い方

new演算子による2次元配列の動的メモリ確保は少しクセがあります。 int (*ip) = new int; // 2次元配列確保 ip = 1; ip = 2; ip = 3; ip = 10; ip = 20; ip = 30; for...
C++

C++ コロンコロン 2つ ::ダブルコロンの意味は?

C++でコロンが2つ付く場合は、クラスのメンバか、名前空間を表す時です。クラスのメンバについての説明はコチラ名前空間についての説明はコチラ
動的メモリ確保・管理

C++ newとは?動的メモリ確保 delete

C言語でも動的メモリ確保、管理ができたようにC++でも可能です。しかし、標準ライブラリ関数を使うのではなく、新しく導入されたnew演算子とdelete演算子をペアで使います。 newとdeleteの使い方 int* ip = new int...
例外処理

C++ try catch 例外処理とは?エラー処理

例外処理とは? 例外処理は、エラー処理に似ている機能です。 例えば、C言語でエラー処理するとしたら、以下のような感じになります。 int result = func(); // func関数でエラーになると0を返すとする。 if (resu...
テンプレート機能

C++ template classとは?テンプレートクラス

始めに、テンプレートがどういった機能なのかは、テンプレートとは?で説明しています。また、テンプレート関数については、テンプレート関数で説明しています。 テンプレート機能は関数にも使えましたが、クラスにも適用できます。 テンプレートクラス テ...
テンプレート機能

C++ template テンプレート関数とは?

始めに、テンプレートがどういった機能なのかは、テンプレートとは?で説明しています。 テンプレート関数とは? 下記のコードは、テンプレートとは?で、例として使ったプログラムです。 #include <iostream> using names...
テンプレート機能

C++ templateとは?テンプレート

テンプレートの説明の前に、なぜテンプレート機能が用意されているか、概要を示します。 #include <iostream> using namespace std; void showint(int data); void showdoub...
実行時型識別(RTTI)

C++ typeidとは?実行時型識別

ここでは、実行時型識別と言う機能をご紹介します。非常に難しく感じるかと思いますが、そんなに難しい事をしているワケではありません。実行時型識別は、その名の通り、プログラム実行中に変数のデータ型を知りたい場合やあるポインタ値が何のデータ型ポイン...
演算子多重定義(オーバーロード)

C++ 演算子多重定義とは?

演算子多重定義 演算子多重定義とは、演算子に複数の機能を持たせる事です。 この機能によって非常に多彩な処理が可能になります。なぜこの機能が必要なのかと言えば、ユーザ定義型(クラス)が存在するからです。例えば以下のようなプログラムがあったとし...
クラス継承機能

C++ virtual 多重継承・仮想基本クラス

多重継承 派生クラスは、複数の基本クラスを持つ事が可能です。派生時の基本的な事柄は、単独継承の時と同じです。記述例派生クラスCは、基本クラスAとBから派生。 class C : public A, public B { クラス定義 }; 仮...