title: Do I have to define pure virtual destructor outside class body?
body: <p>Two compilers I tried accept this syntax but I read somewhere that pure virtual destructor definition should be always outside the class.
  My code which compiles:</p>
  
  <pre><code>class AbstractBase
  {
  public:
      virtual ~AbstractBase() = 0
      {}
  
      virtual void foo()
      {
          ...
      }
  };
  </code></pre>