title: Issues with Partial Class Function Overrides in C++
body: <p>Is there any issue with partially overriding a set of virtual functions defined by a base class?</p>
  
  <p>My compiler provides the following warning:</p>
  
  <pre><code>overloaded virtual function "MyBaseClass::setValue" is only partially overridden in class "MyDerivedClass".
  </code></pre>
  
  <p>The classes look like this:</p>
  
  <pre><code>class MyBaseClass
  {
  public:
      virtual void setValue(int);
      virtual void setValue(SpecialType*);
  }
  
  class MyDerivedClass : public MyBaseClass
  {
  public:
      virtual void setValue(int);
  }
  </code></pre>
  
  <p>The easy way to get rid of this warning is to use different names for the base functions, but I wanted to know if there was any compelling reason to fix this specific warning.  I do not believe this violates the C++ standard.  My guess is that it's to warn a programmer that they may have forgotten to implement the behavior for all possible input types.  In our case, it is intentional to exclude some of the specific types.</p>
  
  <p>Would you discourage suppressing this warning altogether?</p>