Чтобы описать немного сложнее, я думаю. Но я делаю все возможное ...Какой класс должен использоваться C++?
Дано:
прог (Prog_A)
Lib (Lib_A) с класс Class_A
И Lib (Lib_B) с (также) класс Class_A и имеет элемент Class_A mClass_A
Оба класса Class_A имеют функцию
void Class_A::DoSome(){
...
}
Для Class_A в Lib_A затем
void Class_A::DoSome(){
std::cout << "LIB_A";
}
Для Class_A в Lib_B затем
void Class_A::DoSome(){
std::cout << "LIB_B";
}
Prog_A включает в себя Lib_A, Lib_A включает в себя Lib_B. Lib_A и Lib_B «подключены» по Callback. Если я теперь называю mClass_A.DoSome() в Lib_B тогда это печать
LIB_A
вместо моего ожидания 'LIB_B'.
Правильно ли это, или я должен беспокоиться?
Подробнее о функциях 'virtual' member & [vtables] (http://en.wikipedia.org/wiki/Virtual_method_table) –
Какие классы классов классов Class_A принадлежат? –
Ли Linux действительно имеет отношение к вопросу? Сделайте имена различными или используйте пространства имен, чтобы сделать вещи более понятными для использования. – crashmstr