blindman писал(а):не, Ромик, ты ничего не понял. "Слабые" символы разрешаются на этапе компоновки, с перегрузкой не имеют ничего общего
тогда более подробно плз , для тех кто на бронепоезде...
Технический форум по робототехнике.
blindman писал(а):не, Ромик, ты ничего не понял. "Слабые" символы разрешаются на этапе компоновки, с перегрузкой не имеют ничего общего
Romikgy писал(а):на чистом си используют подмену адреса самой ф-ции , как с тем же прерыванием.... пишем свою ф-цию , берем ее адрес, и записываем на место вектора прерывания, так же можно поступать и с другими ф-циями
На самом деле, используется очень часто, просто не все про это знают. В том же avr-gcc (а точнее avr-libc) все вектора прерываний слабо связаны с функцией bad_interrupt, а когда обработчики прерываний определяются в программе - используются эти новые функции.Michael_K писал(а):просто редкостная штука - мало кто в такие дебри лезет
blindman писал(а):Для этого надо, чтобы вызов функции происходил через указатель на нее. Это во первых медленно, во вторых небезопасно (легко обойти контроль типов). При применении слабых символов, связывание имени с адресом происходит на этапе компоновки. И было бы интересно посмотреть, как ты будешь писать новые адреса векторов в флэш.
Romikgy писал(а):интересно в кодовижени эти фичи юзать можно ?
Romikgy писал(а):если смотреть в сторону разработок на авр то как правило проект делает один человек
Romikgy писал(а):про вызов через указатель ... откуда медленость ?