• С++ code ад HR
    код из тестового:
    
    class Base {
    public:
      virtual ~Base() {}
      virtual void print(std::ostream &) const = 0;
    };
    
    typedef Base * PBase;
    
    class Derived {
    public:
       Derived(int data) { this->data = data; }
       virtual ~Derived() {}
    
       virtual void print(std::ostream & s) 
       { s << data; } 
    private:
       int data;
    };
    
    void print_it(std::ostream & s, Base * p) { p->print(s); }
    
    int main() {
      print_it(std::cout, PBase(new Derived(5)));
    }
    
    Если бы не отсутствие const у Derived::print, я бы и не заметил...

Replies (0)