Здравствуйте, MTD, Вы писали:
MTD>Здравствуйте, minorlogic, Вы писали:
M>>Необходимо зарегестрировать имена большого к-ва функций которые НЕ вызываются для регистрации и до вызова main. M>>В каждой из функций уже есть макрос в который мы можем добавить что угодно.
M>>Ваши идеи ? спасибо!
MTD>Первой строкой в main вызвать код, который зарегистрирует функции чем не устраивает?
не устраивает по условию задачи. А на практике , код main нельзя модифицировать.
A>Непонятная задача, (большое к-во функций) * (В каждой есть макрос в который мы можем добавить что угодно) надо зарегистрировать (где, в паспортом столе?)
Например заригестрировать имена функций во внешнем хранилище , некий API
Здравствуйте, Pavel Dvorkin, Вы писали:
PD>Предложи свой способ вызвать некую функцию до main (хоть с рефакторингом, хоть с чем угодно) — тогда и поговорим. Пока что от тебя я вижу только совет, который годится не для minorlogic, а для некоего школьника, впервые узнавшего про язык C.
Мы не задачки из школьного учебника решаем — для вызова, чего либо до main нужны очень серьезные основания. Пока я не понял зачем это нужно, поэтому банальный совет — избегать глобальных и статических типов, делать порядок инициализации явным.
Здравствуйте, niXman, Вы писали:
X>Здравствуйте, minorlogic, Вы писали:
M>>Имелось в виду записать ее имя (параметры) в внешнем хранилище. X>LD_PRELOAD
Здравствуйте, Pavel Dvorkin, Вы писали:
PD>Сомневаюсь, что тебе это помогло...
Помогло, помогло. Мы тут друг-другу помогаем. Ты мне про ТС рассказал, я тебе про то, что статические объекты до main создаются — оба стали знать чуть больше
Здравствуйте, MTD, Вы писали:
MTD>Помогло, помогло. Мы тут друг-другу помогаем. Ты мне про ТС рассказал, я тебе про то, что статические объекты до main создаются — оба стали знать чуть больше
Спасибо большое. Будет к тому же неплохо, если ты разберешься с тем, что статические объекты, описанные внутри функции , создаются при первом входе в функцию, а статические объекты, описанные вне функций, есть те же глобальные объекты, область видимости которых при компиляции ограничена файлом.
Здравствуйте, Pavel Dvorkin, Вы писали:
MTD>>Помогло, помогло. Мы тут друг-другу помогаем. Ты мне про ТС рассказал, я тебе про то, что статические объекты до main создаются — оба стали знать чуть больше
PD>Спасибо большое.
Не за что.
PD>Будет к тому же неплохо, если ты разберешься с тем, что статические объекты, описанные внутри функции , создаются при первом входе в функцию, а статические объекты, описанные вне функций, есть те же глобальные объекты, область видимости которых при компиляции ограничена файлом.
Молодец, книжку открыл, еще почитай про статические объекты классов, не повредит.
Здравствуйте, minorlogic, Вы писали:
A>>Непонятная задача, (большое к-во функций) * (В каждой есть макрос в который мы можем добавить что угодно) надо зарегистрировать (где, в паспортом столе?)
M>Например заригестрировать имена функций во внешнем хранилище , некий API
Переименуйте имеющийся main в oldmain, напишите свой main, зарегистрируйте в нем что вам нужно, потом вызывайте "oldmain"
Здравствуйте, MTD, Вы писали:
MTD>Молодец, книжку открыл, еще почитай про статические объекты классов, не повредит.
Читать книги, безусловно, полезно. Хотя бы для того, чтобы знать, что у классов есть поля и методы (в том числе статические), а не объекты. Что же касается статических полей классов — то это фактически глобальные переменные, приписанные к классу.
Здравствуйте, Pavel Dvorkin, Вы писали:
PD>Читать книги, безусловно, полезно. Хотя бы для того, чтобы знать, что у классов есть поля и методы (в том числе статические), а не объекты. Что же касается статических полей классов — то это фактически глобальные переменные, приписанные к классу.
Отлично! Почти все фигуры выучили, скоро будем учится играть
Здравствуйте, minorlogic, Вы писали:
M>Задача следующая.
M>Необходимо зарегестрировать имена большого к-ва функций которые НЕ вызываются для регистрации и до вызова main. M>В каждой из функций уже есть макрос в который мы можем добавить что угодно.
M>Ваши идеи ? спасибо!
Здравствуйте, MTD, Вы писали:
PD>>Будет к тому же неплохо, если ты разберешься с тем, что статические объекты, описанные внутри функции , создаются при первом входе в функцию, а статические объекты, описанные вне функций, есть те же глобальные объекты, область видимости которых при компиляции ограничена файлом.
MTD>Молодец, книжку открыл, еще почитай про статические объекты классов, не повредит.
Тоже пока не помогли , создаются при первом создании экземпляра класса.