Здравствуйте, LaPerouse, Вы писали:
LP>
LP>class A : public Interface
LP>{
LP>}
LP>class B : public Interface
LP>{
LP>}
LP>void foo(A* object)
LP>{
LP>}
LP>void foo(B* object)
LP>{
LP>}
LP>void test()
LP>{
LP>Interface* object1 = new A();
LP>Interface* object2 = new B();
LP>foo((A)object1);
LP>foo((B)object1);
LP>}
LP>
LP>Компилятор требует явного приведения типов при вызове соот.в функции. Т е нужно делать dynamic cast , делать нужный каст и вызывать нужную функцию, что НИЧЕГО ОБЩЕГО С ПОЛИМОРФИЗМОМ НЕ ИМЕЕТ.
Блин, непонятно, зачем ты заладил этот спор. Никто в C++ или Java использовать функциональную нотацию вместо точечной не заставляет. А вот некоторых других языках точечной нотации просто нет, но там использование функциональной нотации не приводит к описанной проблеме. Когда люди говорят про скобочную нотацию, они эти самые языки и имеют в виду.
... << RSDN@Home 1.2.0 alpha rev. 672>>