Нужен ли статическим библиотекам, зависящим от других слайбов, фактический «код» от них для работы?

Извините за расплывчатый заголовок вопроса, Я просто хочу кое-что выяснить.

Статические библиотеки не связаны с другими статическими библиотеками, верно?

Итак, когда я пишу слайб: A, который использует функциональность другого: B, все, что я должен предоставить, это заголовки от B до A, и только те, даже если A действительно использует функциональность из B? Да?

Пока в exe: X, который использует A, указан B.lib в качестве входных данных компоновщика?

Так что во время компоновки компоновщик принимает A.lib, который в основном знает только, что функция B был вызван где-то внутри его кода, и каким-то образом заполняет эту информацию из B.lib, делая A.lib "целым", прежде чем X будет связан с его теперь работающими частями?

Мотивация, стоящая за этими вопросами, состоит в том, чтобы избавиться от некоторые предупреждения компоновщика 4006 и отброшенные двойные определения, и я думаю, что это должно помочь, если это действительно допустимый способ сделать это.

10
задан Erius 1 June 2011 в 18:58
поделиться