Как сделать так, чтобы метод child вызывался: виртуальное ключевое слово не работает?
Вот мой код,
#include
#include
using namespace std;
class TestClass
{
public:
virtual void test(string st1, string st2);
};
class ExtendedTest: public TestClass
{
public:
virtual void test(string st1, string st2);
};
void TestClass::test(string st1, string st2="st2")
{
cout < st1 < endl;
cout < st2 < endl;
}
void ExtendedTest::test(string st1, string st2="st2")
{
cout < "Extended: " < st1 < endl;
cout < "Extended: " < st2 < endl;
}
void pass(TestClass t)
{
t.test("abc","def");
}
int main()
{
ExtendedTest et;
pass(et);
return 0;
}