Ранняя привязка для чайников [закрыто]C++

Программы на C++. Форум разработчиков
Ответить Пред. темаСлед. тема
Гость
 Ранняя привязка для чайников [закрыто]

Сообщение Гость »


Недавно мне хотелось понять виртуальные таблицы, раннее и позднее связывание методов в контексте ООП.

Но все объяснения, которые я нашел в книгах, видео, постах, были скорее «черными ящиками», как бы их так называть. Все, что я нашел, это очевидные примеры кода типа «Базовый против производного» и только упоминание о vtable, но даже не было подробного объяснения, кроме нашего коллеги vpointer, который тайно существует. Я просто не нашел в Интернете никакой информации о том, как эти протоколы соответствуют времени компиляции или времени выполнения.

Есть ли в этих протоколах какой-то четкий алгоритм? Такое, что; когда у нас есть A* a = new B() и выполняется a.foo(), программа проверяет, находится ли foo в виртуальной таблице A, а затем, если это так, она вызывает foo из виртуальной таблицы B. Но если есть раннее связывание, мы звоним из A....

Не существует четкого пошагового процесса того, как эти вещи сочетаются друг с другом, нет четкого рецепта того, как ведет себя программа, мы просто переходим от компиляции к среде выполнения, просто прекрасно все зная, без каких-либо четких объяснений.

Это нормально или я только сейчас начинаю понимать, что программирование — это сложно и ничего не будет понятно?

Я озадачен тем, как здесь есть люди, знающие свое дело, когда информацию в Интернете найти нелегко.

Мне очень хочется изучить этот материал до мозга костей, но четкого пути нет. Есть ли у кого-нибудь хороший источник, позволяющий понять эту внутреннюю работу?
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Есть ли какая-то ранняя поздняя привязка в сериализации Java?
    Anonymous » » в форуме JAVA
    0 Ответы
    9 Просмотры
    Последнее сообщение Anonymous
  • Есть ли какая-то ранняя поздняя привязка в сериализации Java?
    Anonymous » » в форуме JAVA
    0 Ответы
    8 Просмотры
    Последнее сообщение Anonymous
  • Есть ли что-нибудь вроде книг «Для чайников» для изучения AWK? [закрыто]
    Anonymous » » в форуме Linux
    0 Ответы
    40 Просмотры
    Последнее сообщение Anonymous
  • Поляры снова превращаются в чайников
    Anonymous » » в форуме Python
    0 Ответы
    7 Просмотры
    Последнее сообщение Anonymous
  • Как использовать GitVersion для чайников?
    Anonymous » » в форуме C#
    0 Ответы
    9 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C++»