RINF -- 継承した非仮想関数の再定義(Redefining an Inherited Nonvirtual Function)

提供: RAD Studio
移動先: 案内検索

C++ 検査 への移動


説明

このルールは、継承した非仮想関数の再定義を避けるためのものです。 ほとんどの場合、非仮想関数をオーバーライドすることは重大な間違いであり、深刻な結果をもたらしかねません。 この検査ではそのような危険なコードを探し、警告を出力します。

誤った例

 class Car {
 public:
   void fooBar();
 };
  
 class Truck : public Car {
 public:
   void fooBar();
 };

正しい例

 class Car  {
 public:
   virtual void fooBar();
 };
 
 class Truck : public Car {
 public:
   void fooBar();
 };

関連項目