... но не любой ценой.
-
- Наверно речь в т.ч. о том, что функции скомпилированной либы могут
переопределяться вне неё - они для основного кода по сути weak.
Потому функция пользователя с тем же именем будет применена в либе.
И это обеспечит линкер. В вариантах с исходниками weak пишут
ручками - Vit(19.05.2024 18:45)
- Все будет работать и без веак. Скомпилированная либа может
ссылаться на неразрешенные при компиляции имена. Но в проекте, где
эта либа используется, неразрешенное имя должно быть определено. - il-2(19.05.2024 20:01)
- если компилируете из исходников то для подмены по имени нужна
"слабая функция". примеры можете посмотреть, например, в том же HAL
(в исходниках). Vit(381 знак., 19.05.2024 20:25, ссылка)
- Я тут НАЛ ругаю, а вы его в пример :-) Без __weak будет все
прекрасно, и с исходниками и без. Только пользователь при этом
будет ОБЯЗАН определить эту функцию у себя. __weak нужен, чтобы
пользователя лишний раз не нервировать... если пол бетонный :-) - il-2(20.05.2024 07:08)
- заставлять читать не всегда присутствующее описание к коду это свинство. все функции в скомпилированных либах уже слабые без добавления __weak. переназначение по имени без использования макросов при нескомпилированной библиотеке достигается именно использованием __weak. Vit(396 знак., 20.05.2024 10:54)
- Я тут НАЛ ругаю, а вы его в пример :-) Без __weak будет все
прекрасно, и с исходниками и без. Только пользователь при этом
будет ОБЯЗАН определить эту функцию у себя. __weak нужен, чтобы
пользователя лишний раз не нервировать... если пол бетонный :-) - il-2(20.05.2024 07:08)
- если компилируете из исходников то для подмены по имени нужна
"слабая функция". примеры можете посмотреть, например, в том же HAL
(в исходниках). Vit(381 знак., 19.05.2024 20:25, ссылка)
- Все будет работать и без веак. Скомпилированная либа может
ссылаться на неразрешенные при компиляции имена. Но в проекте, где
эта либа используется, неразрешенное имя должно быть определено. - il-2(19.05.2024 20:01)
- Наверно речь в т.ч. о том, что функции скомпилированной либы могут
переопределяться вне неё - они для основного кода по сути weak.
Потому функция пользователя с тем же именем будет применена в либе.
И это обеспечит линкер. В вариантах с исходниками weak пишут
ручками - Vit(19.05.2024 18:45)