こうすけ さん プロフィール

  •  
こうすけさん: C++ に挑戦!
ハンドル名こうすけ さん
ブログタイトルC++ に挑戦!
ブログURLhttp://fanblogs.jp/cplusplus/
サイト紹介文C++を学びながら、理解したことを記述します。 自分と、さらに誰かの役に立つことを願いながら。
参加カテゴリー
更新頻度(1年)情報提供242回 / 142日(平均11.9回/週) - 参加 2017/08/29 10:18

こうすけ さんのブログ記事

  • 《その241》 問題演習 p.307演習8-6,演習8-7
  • 新版明解C++中級編 p.307 演習8-6 次のプログラムの例外ハンドラを、const exception& 型を受け取るように改変したプログラムを作成せよ。// 整数 0 〜 99以下の加算#include <iostream>#include <exception>using namespace std;int add(int v1, int v2) { // v1, v2 が 0 〜 99 でなければ out_of_rangeエラー if .. [続きを読む]
  • 《その240》 実行時エラークラス
  •  実行時エラークラス 実行時エラーは、プログラムを実行してみないと検出できないような、実行前の予測が困難なエラーです。 実行時エラークラスには、  runtime_errorクラスと、このクラスから public派生した  (1) range_errorクラス  (2) overflow_errorクラス  (3) underflow_errorクラスがあります。 runtime_errorクラス runtime_errorクラスは、exceptionクラスから直接派生したク.. [続きを読む]
  • 《その239》 論理エラークラス
  •  論理エラークラス 論理エラーは、論理的な誤りに対するエラーで、プログラムの実行前に検出が可能であり、本来は、事前に回避されるべきエラーです。 論理エラークラスには、  logic_errorクラスと、このクラスから public派生した  (1) domain_errorクラス  (2) invalid_argumentクラス  (3) length_errorクラス  (4) out_of_rangeクラスがあります。 logic_errorクラス logic_error.. [続きを読む]
  • 《その238》 bad_typeid例外
  •  bad_typeid例外 bad_typeid例外( <typeinfo>ヘッダで定義されている )は、typeid演算子が、多相的クラス型へのポインタ参照を受け取った際、そのポインタが空ポインタであった場合に、送出されます。 下記のプログラムにおいて、bas は、基底クラス Base のクラスオブジェクト。また、drv は、public派生クラス Derived のクラスオブジェクトです。最初(◆1.)のキャストは、drv へのポインタ参照を 派生クラス型 Der.. [続きを読む]
  • 《その237》 bad_cast例外
  •  bad_cast例外 bad_cast例外( <typeinfo>ヘッダで定義されている )は、dynamic_cast演算子による動的キャストを行う際、参照型へのキャストに失敗したときに送出されます。 下記のプログラムにおいて、bas は、基底クラス Base のクラスオブジェクト。また、drv は、public派生クラス Derived のクラスオブジェクトです。最初のキャスト(◆1. )は、drv への参照を 派生クラス型 Derived& から 基底クラス型.. [続きを読む]
  • 《その236》 bad_alloc例外
  •  bad_alloc例外 bad_allocクラス( <new>ヘッダで定義されている )は、記憶域の動的確保に失敗したときに送出される例外クラスです。 記憶域の動的確保に失敗すると、get_new_handler関数が nullptr を返し、それを受けて bad_alloc例外が送出されます。 ※ nullptr は、ヌルポインタを指定するために予約されたキーワードです。 get_new_handler関数が返す nullptr は、set_new_handler.. [続きを読む]
  • 《その235》 bad_exception例外
  •  bad_exception例外 bad_exception例外は、exception からの public派生クラスです。この bad_exception例外は、関数が例外指定に違反した例外を送出しようとしたときに、送出されます。( 例外指定については、本ブログ《225》をご参照ください。)以下は、《225》からの抜粋です。例外指定違反が起きた場合 (1) bad_exception例外が送出されて unexpected関数が呼び出されます。 (2) unexpected関.. [続きを読む]
  • 《その234》 const char*型 と char* const型
  •  const char*型 と char* const型 前回《233》に、次の3つの型が出てきました。一応、違いをチェックしておきたいと思います。  (A) const char* 型  (B) char const* 型  (C) char* const 型 先ず、(A) と (B) は同じ型です。 (A) と (C) の違いは、次のプログラム,プログラム中のコメント,出力結果で確認できます。// ------------------------------------#.. [続きを読む]
  • 《その233》 exceptionクラス
  •  exceptionクラス exceptionクラスは、すべての例外型の基底クラスです。以下はその定義例です。class exception {public: exception () throw(); exception (const exception&) throw(); exception& operator= (const exception&) throw(); virtual ~exception() throw(); virtua.. [続きを読む]
  • 《その230》 問題演習(例外クラスの階層化) p.295演習8-3
  •  次のサンプルプログラムは、ヘッダ MathException.h と MathExceptionTest.cpp とで構成されています。 プログラムは、0 〜 99 の整数集合の範囲内で加減乗除演算を行い結果を出力します。その演算の過程で、数値が集合に属さないオーバーフローエラー、0 による除算エラー、が発生した場合には、ヘッダによって提供されるエラー用クラスを送出します。 なお、サンプルプログラムでは、ヘッダ内のエラー用クラスは階層化されて [続きを読む]
  • 《その229》 例外が送出される際の工程について
  • C++ランキング  にほんブログ村★ 新版明解C++入門編(SB Creative株式会社)からスタートして、現在は、  新版明解C++中級編(SB Creative 株式会社)に入りました。  演習問題を全て解きながら、また、自分なりに要点をまとめながら、進めています。★ ソースプログラムのコンパイルには、Visual Studio Community 2017 を利用しています。  Visual Studio Community 2017 の使い方については、このブログの.. [続きを読む]
  • 《その228》 例外安全と例外中立 & p.291演習8-2
  • C++ランキング  にほんブログ村★ 新版明解C++入門編(SB Creative株式会社)からスタートして、現在は、  新版明解C++中級編(SB Creative 株式会社)に入りました。  演習問題を全て解きながら、また、自分なりに要点をまとめながら、進めています。★ ソースプログラムのコンパイルには、Visual Studio Community 2017 を利用しています。  Visual Studio Community 2017 の使い方については、このブログの.. [続きを読む]
  • 《その227》 terminate関数 & p.291演習8-1
  • C++ランキング  にほんブログ村★ 新版明解C++入門編(SB Creative株式会社)からスタートして、現在は、  新版明解C++中級編(SB Creative 株式会社)に入りました。  演習問題を全て解きながら、また、自分なりに要点をまとめながら、進めています。★ ソースプログラムのコンパイルには、Visual Studio Community 2017 を利用しています。  Visual Studio Community 2017 の使い方については、このブログの.. [続きを読む]
  • 《その226》 例外の再送出
  • C++ランキング  にほんブログ村★ 新版明解C++入門編(SB Creative株式会社)からスタートして、現在は、  新版明解C++中級編(SB Creative 株式会社)に入りました。  演習問題を全て解きながら、また、自分なりに要点をまとめながら、進めています。★ ソースプログラムのコンパイルには、Visual Studio Community 2017 を利用しています。  Visual Studio Community 2017 の使い方については、このブログの.. [続きを読む]
  • 《その225》 例外指定
  • C++ランキング  にほんブログ村★ 新版明解C++入門編(SB Creative株式会社)からスタートして、現在は、  新版明解C++中級編(SB Creative 株式会社)に入りました。  演習問題を全て解きながら、また、自分なりに要点をまとめながら、進めています。★ ソースプログラムのコンパイルには、Visual Studio Community 2017 を利用しています。  Visual Studio Community 2017 の使い方については、このブログの.. [続きを読む]
  • 《その224》「 tryブロック・例外ハンドラ構造 」 の関数
  • C++ランキング  にほんブログ村★ 新版明解C++入門編(SB Creative株式会社)からスタートして、現在は、  新版明解C++中級編(SB Creative 株式会社)に入りました。  演習問題を全て解きながら、また、自分なりに要点をまとめながら、進めています。★ ソースプログラムのコンパイルには、Visual Studio Community 2017 を利用しています。  Visual Studio Community 2017 の使い方については、このブログの.. [続きを読む]
  • 《その222》 例外用の入れ子クラス
  • C++ランキング  にほんブログ村★ 新版明解C++入門編(SB Creative株式会社)からスタートして、現在は、  新版明解C++中級編(SB Creative 株式会社)に入りました。  演習問題を全て解きながら、また、自分なりに要点をまとめながら、進めています。★ ソースプログラムのコンパイルには、Visual Studio Community 2017 を利用しています。  Visual Studio Community 2017 の使い方については、このブログの.. [続きを読む]
  • 《その221》 例外の送出
  • C++ランキング  にほんブログ村★ 新版明解C++入門編(SB Creative株式会社)からスタートして、現在は、  新版明解C++中級編(SB Creative 株式会社)に入りました。  演習問題を全て解きながら、また、自分なりに要点をまとめながら、進めています。★ ソースプログラムのコンパイルには、Visual Studio Community 2017 を利用しています。  Visual Studio Community 2017 の使い方については、このブログの.. [続きを読む]
  • 《その220》 例外処理(2)
  • C++ランキング  にほんブログ村★ 新版明解C++入門編(SB Creative株式会社)からスタートして、現在は、  新版明解C++中級編(SB Creative 株式会社)に入りました。  演習問題を全て解きながら、また、自分なりに要点をまとめながら、進めています。★ ソースプログラムのコンパイルには、Visual Studio Community 2017 を利用しています。  Visual Studio Community 2017 の使い方については、このブログの.. [続きを読む]
  • 《その219》 例外処理(1)
  • C++ランキング  にほんブログ村★ 新版明解C++入門編(SB Creative株式会社)からスタートして、現在は、  新版明解C++中級編(SB Creative 株式会社)に入りました。  演習問題を全て解きながら、また、自分なりに要点をまとめながら、進めています。★ ソースプログラムのコンパイルには、Visual Studio Community 2017 を利用しています。  Visual Studio Community 2017 の使い方については、このブログの.. [続きを読む]
  • 《その218》 仮想派生
  • C++ランキング  にほんブログ村★ 新版明解C++入門編(SB Creative株式会社)からスタートして、現在は、  新版明解C++中級編(SB Creative 株式会社)に入りました。  演習問題を全て解きながら、また、自分なりに要点をまとめながら、進めています。★ ソースプログラムのコンパイルには、Visual Studio Community 2017 を利用しています。  Visual Studio Community 2017 の使い方については、このブログの.. [続きを読む]
  • 《その217》 仮想派生 & p.265演習7-5
  • C++ランキング  にほんブログ村★ 新版明解C++入門編(SB Creative株式会社)からスタートして、現在は、  新版明解C++中級編(SB Creative 株式会社)に入りました。  演習問題を全て解きながら、また、自分なりに要点をまとめながら、進めています。★ ソースプログラムのコンパイルには、Visual Studio Community 2017 を利用しています。  Visual Studio Community 2017 の使い方については、このブログの.. [続きを読む]