Что произойдет, если исполняемая и разделяемая библиотека содержат функции с тем же именем? Например EXE имеет определение, как это:Может ли исполняемая и совместно используемая библиотека содержать функции с тем же именем?
extern int fund()
{
return 0;
}
и разделяемая библиотека имеет такое же определение:
extern int fund()
{
return 1;
}
какая функция будет вызываться из исполняемого файла и из общей библиотеки: 1 - для Windows? 2 - для unix-base?
PS: Когда я определяю AfxWinMain в своем приложении MFC, при запуске он будет вызываться вместо AfxWinMain в MFC DLL. Мне нужна теория, почему так?
Ответ для этого отличается от C, пожалуйста, не спам-теги. – George
@George: Вы уверены? Технически это зависит от компилятора, но все, что я знаю, решит «фонд» на символ, определенный в этом модуле. – MSalters
@Mikhail Kipa: Подумайте, что произойдет, если Windows X + 1 добавит новую функцию в DLL Windows, которая случайно столкнулась с функцией с тем же именем в вашем исполняемом файле. – MSalters