implement (virtual) destructor
Dear Advanced c/g++ programers:
I tested a simple program about Creating an interface with an Abstract Base Class. from book (C++ cookbook) page 308, 309. Example 8-11. using a pure interface.
-------
// Example 8-11 Using a pure interface
class Person {
public:
virtual void eat() = 0;
virtual void sleep() = 0;
virtual void walk() = 0;
virtual void jump() = 0;
};
class IAirbone {
public:
virtual void fly() = 0;
virtual void up() = 0;
virtual void down() = 0;
};
class Superhero : public Person, // A superhero *is* a person
public IAirbone { // and flies
public:
virtual void eat();
virtual void sleep();
virtual void walk();
virtual void jump();
virtual void fly();
virtual void up();
virtual void down();
virtual ~Superhero();
};
void Superhero::walk() {
// ...
}
void Superhero::fly() {
// ...
}
// Implement all of the pure virtuals in Superhero's Superclasses...
int main() {
Superhero superman;
superman.walk(); // Superman can walk like a person
superman.fly(); // or fly like a bird
}
-------
my g++ 4.5.2 (on linux2.6.35-25) response by
-------
eric@eric-
/tmp/ccT3nO5t.o: In function `main':
Example8-
/tmp/ccT3nO5t.o: In function `Superhero:
Example8-
Example8-
collect2: ld returned 1 exit status
-------
actually that book even did not specially define Superhero::walk(), that is
I add by myself to escape my compile's error(is that right? or book's is right?)
you can download the source code of that book's example and test by yourself
http://
according to book, thses code are compile good in visual c++ 7.1 on window xp
thanks your help a lot in advance, Eric
-------
jsmith (5668) Jul 15, 2011 at 5:07pm
The linker error is because you didn't implement the destructor for Superhero (or at least that's what it's saying).
-------
fsshl (4) Jul 15, 2011 at 6:33pm
so, do you know how to implement (the destructor for Superhero)
thanks your code a lot in advance(I am waiting)
Question information
- Language:
- English Edit question
- Status:
- Answered
- Assignee:
- No assignee Edit question
- Last query:
- Last reply:
Can you help with this problem?
Provide an answer of your own, or ask Edward Benson for more information if necessary.