T
Tobias Erbsland
Hello
I'm not really sure if this should be possible according to the
standard, because didn't found anything in the FAQ and in the C++ book
about that.
==== example ===
class A
{
public:
virtual void foo( int x = 0 ) = 0;
};
class B : public A
{
public:
virtual void foo( double x = 0.0 ) = 0;
};
class Impl : public B
{
public:
virtual void foo( int x ) {};
virtual void foo( double x ) {};
};
int main( int argc, char* argv[] )
{
B* b = new Impl();
int x;
b->foo();
}
==== example ===
I have two interfaces with pure virtual methods. But the methods of the
different interfaces are related together, because the B interface
overloading the method from the interface A. And with the default
arguments, it should be a conflict.
best regards
Tobias
I'm not really sure if this should be possible according to the
standard, because didn't found anything in the FAQ and in the C++ book
about that.
==== example ===
class A
{
public:
virtual void foo( int x = 0 ) = 0;
};
class B : public A
{
public:
virtual void foo( double x = 0.0 ) = 0;
};
class Impl : public B
{
public:
virtual void foo( int x ) {};
virtual void foo( double x ) {};
};
int main( int argc, char* argv[] )
{
B* b = new Impl();
int x;
b->foo();
}
==== example ===
I have two interfaces with pure virtual methods. But the methods of the
different interfaces are related together, because the B interface
overloading the method from the interface A. And with the default
arguments, it should be a conflict.
best regards
Tobias