..
他のプログラミング言語よりもC + +言語の特徴の中で、確かに我々はクラスの関数やメソッドに加えて機構にもオーバーロードされた演算子の使用を、延長の可能性を識別する。
一言で言えば、"オーバーロードは 、一般的に、数と型指定されたパラメータのに基づいて、同じ名前(および通常は似ているが同一ではないを行う)を持つ関数を識別するためのメカニズムです。
例えば、私は所定の情報の一連を印刷する2つの印刷機能は、汎用の(パラメータなし)を定義し、ユーザーがパラメータを適切に設定することで指定できる別のは、興味深いものの情報です。したがって、印刷される。
印刷機能は、したがって、この場合はユーザー入力によって提供されるさまざまな情報を合わせて再定義されます。 同様に、C + +では、演算子を再定義することができます:我々は算術演算子を考える"+"、" - "、"*"と"/"。 それが面白いと実用的になることができる、例えば、"+"演算子を再定義することは数字が、文字列(英数字のセット)場合に適用されます。 文字列が文字列"世界"で"こんにちは" と b、操作の場合は後者のケースでは、"和"は、例えば、文字列の連結に対応しています
文字列C = A + B値は"Hello world"の文字列C、の創出につながる。
'Sは、 オーバーロード、そして特に演算子のオーバーロードC + + 、まだ前回の記事で扱われている、我々はさらなる調査のために参照しているかに。
我々は今検討することを提案、しかし、具体的にどのようにこの同じメカニズムは、メモリ管理のための有用な、 新しい演算子と delete演算子を参照することによって、特に、他のタイプの演算子のとどのように有用に拡張することができます。
new演算子と delete演算子は(または解放)将来の使用(削除)するためのメモリ、メモリ管理に有用であり、特に(または割り当てる)新しいオブジェクト(新しい)に必要なメモリを確保し、割り当てることができますし、自由に。
C、Cからそれを区別する+ +、そのうちの非 常に興味深い側面は、それはコマンドながら、(自動的に各オブジェクトに必要なスペースを計算するために、新たに関して、例えば、許可するnewと deleteの存在、です。同等のC、malloc関数は、プログラマが割り当てられるオブジェクトのサイズが)何であるかを指定する必要があります。
newと deleteの強さがちょうど大きい一般的な使用であるため、この時点でそれは、オーバーロードするためのメカニズムの有用性が何であるか疑問に自然であり、それは考慮ケースの数を取る新しい定義を作成するために不必要なようです。 演算子の価格はその一般的な、しかし、できるだけ頻繁に起こる、 の制御で特定の欠如です。 例えば、それはnew演算子のデフォルトのバージョンを使用して、可能ではない、単に必要なメモリ(メモリが使用可能ですか?正しく割り当てられているの?)の割り当てに問題があったかどうかを確認してください。 この問題を解決する1つは"オーバーロードへの償還請求をすることができます。
だから我々は、特定の考慮事項と手順は、演算子のオーバーロードから削除する場合でも有効であることを強調し、、簡単な例では、 新しい演算子をオーバーロードする場合を説明します。
| |
HTML(コース)
29€からWeb用のマークアップ言語。 |
| |
MySQLの(コース)
オープンソースのデータベースの管理。 39€から。 |
| |
ウェブマスターベース(ファースト)
ゼロからWebサイトを作成します。 29€から開始。 |