Re[2]: Непонятки с using Base::func в производном классе...
От: dsilence  
Дата: 18.12.07 14:56
Оценка:
Здравствуйте, Lorenzo_LAMAS, Вы писали:

L_L>Вот есть 7.3.3/15, который говорит


L_L>должен компилиться (ну, при условии, что включены соответствующие заголовки). Например, g++ и Comeau его вполне компилируют.


а вот есть 10.3.2 (текст приводить не буду, только код), который говорит что зря они это делают
struct a{
    virtual void f();
};

struct b : virtual public a{
    virtual void f();
};

struct c : b, virtual a{
    using a::f;
};

int main()
{
    using namespace std;
    с d;
    d.f(); //b по стандарту
    vector<с> v;
    for_each(v.begin(), v.end(), mem_fun_ref(&с::f));//угадайте какая? 
}


ладно. спорить можем до бесконечности всё равно ни к чему не приведёт. как выясняется у разработчиков компилеров тоже нет единого мнения.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.