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();
  };

関連項目