Зарегестрировать функции до вызова main
От: minorlogic Украина  
Дата: 09.02.14 13:08
Оценка:
Задача следующая.

Необходимо зарегестрировать имена большого к-ва функций которые НЕ вызываются для регистрации и до вызова main.
В каждой из функций уже есть макрос в который мы можем добавить что угодно.

Ваши идеи ? спасибо!
... << RSDN@Home 1.2.0 alpha 5 rev. 1539>>
Ищу работу, 3D, SLAM, computer graphics/vision.
Re: Зарегестрировать функции до вызова main
От: Abyx Россия  
Дата: 09.02.14 13:23
Оценка: -1
Здравствуйте, minorlogic, Вы писали:

M>Задача следующая.


M>Необходимо зарегестрировать имена большого к-ва функций которые НЕ вызываются для регистрации и до вызова main.

M>В каждой из функций уже есть макрос в который мы можем добавить что угодно.

M>Ваши идеи ? спасибо!


возможно вот это поможет — http://rsdn.ru/forum/cpp/3089286.1
Автор: remark
Дата: 03.09.08
In Zen We Trust
Re: Зарегестрировать функции до вызова main
От: niXman Ниоткуда https://github.com/niXman
Дата: 09.02.14 13:32
Оценка: +1 -1
что значит "регистрация функций" ?
пачка бумаги А4 стОит 2000 р, в ней 500 листов. получается, лист обычной бумаги стОит дороже имперского рубля =)
Re: Зарегестрировать функции до вызова main
От: MTD https://github.com/mtrempoltsev
Дата: 09.02.14 13:41
Оценка: +2 -2
Здравствуйте, minorlogic, Вы писали:

M>Необходимо зарегестрировать имена большого к-ва функций которые НЕ вызываются для регистрации и до вызова main.

M>В каждой из функций уже есть макрос в который мы можем добавить что угодно.

M>Ваши идеи ? спасибо!


Первой строкой в main вызвать код, который зарегистрирует функции чем не устраивает?
Re[2]: Зарегестрировать функции до вызова main
От: Abyx Россия  
Дата: 09.02.14 13:44
Оценка: -1
Здравствуйте, niXman, Вы писали:

X>что значит "регистрация функций" ?

то и значит. зарегистрировать в глобальной таблице. рефлексия и всё такое.
In Zen We Trust
Re[2]: Зарегестрировать функции до вызова main
От: Pavel Dvorkin Россия  
Дата: 09.02.14 14:07
Оценка: :)
Здравствуйте, MTD, Вы писали:

MTD>Первой строкой в main вызвать код, который зарегистрирует функции чем не устраивает?


До этого будут вызваны конструкторы глобальных объектов.
With best regards
Pavel Dvorkin
Re: Зарегестрировать функции до вызова main
От: anuniquename Россия  
Дата: 09.02.14 14:09
Оценка:
Здравствуйте, minorlogic, Вы писали:

Хм, тут раздают минусы?

M>Задача следующая.


M>Необходимо зарегестрировать имена большого к-ва функций которые НЕ вызываются для регистрации и до вызова main.

M>В каждой из функций уже есть макрос в который мы можем добавить что угодно.

Непонятная задача, (большое к-во функций) * (В каждой есть макрос в который мы можем добавить что угодно) надо зарегистрировать (где, в паспортом столе?)

M>Ваши идеи ? спасибо!


Опишите функции до main, может они зарегистрируются сами.
Re[3]: Зарегестрировать функции до вызова main
От: MTD https://github.com/mtrempoltsev
Дата: 09.02.14 14:11
Оценка:
Здравствуйте, Pavel Dvorkin, Вы писали:

MTD>>Первой строкой в main вызвать код, который зарегистрирует функции чем не устраивает?


PD>До этого будут вызваны конструкторы глобальных объектов.


И статических, но вопрос был: "Первой строкой в main вызвать код, который зарегистрирует функции чем не устраивает?"
Re[2]: Зарегестрировать функции до вызова main
От: niXman Ниоткуда https://github.com/niXman
Дата: 09.02.14 14:11
Оценка:
Здравствуйте, anuniquename, Вы писали:

A>Хм, тут раздают минусы?

да, это Абикса стиль =)
пачка бумаги А4 стОит 2000 р, в ней 500 листов. получается, лист обычной бумаги стОит дороже имперского рубля =)
Re[4]: Зарегестрировать функции до вызова main
От: Pavel Dvorkin Россия  
Дата: 09.02.14 14:17
Оценка: :)
Здравствуйте, MTD, Вы писали:

PD>>До этого будут вызваны конструкторы глобальных объектов.


MTD>И статических, но вопрос был: "Первой строкой в main вызвать код, который зарегистрирует функции чем не устраивает?"


Тем, что , возможно, этим конструкторам требуется, чтобы к моменту их выполнения регистрация уже прошла.
With best regards
Pavel Dvorkin
Re[5]: Зарегестрировать функции до вызова main
От: MTD https://github.com/mtrempoltsev
Дата: 09.02.14 14:22
Оценка: -1
Здравствуйте, Pavel Dvorkin, Вы писали:

PD>Тем, что , возможно, этим конструкторам требуется, чтобы к моменту их выполнения регистрация уже прошла.


Это твои догадки, а мне чтобы помочь автору, нужна была дополнительная информация от него. Если все так, как ты написал, то у автора проблема — нет никаких гарантий, что объекты не будут созданы раньше, чем пройдет регистрация, хоть и до main.
Re: Зарегестрировать функции до вызова main
От: Pavel Dvorkin Россия  
Дата: 09.02.14 14:24
Оценка: -1 :))
Здравствуйте, minorlogic, Вы писали:

M>Необходимо зарегестрировать имена большого к-ва функций которые НЕ вызываются для регистрации и до вызова main.

M>В каждой из функций уже есть макрос в который мы можем добавить что угодно.

В BC++ 3.1 иожно было зарегистрировать некую функцию, которая вызывалась до main
В VC++ я такого не знаю

Единственно, что могу предложить умозрительно — взять исходники стартового кода (из которого вызывается main), добавить туда свою функцию (которая и регистрирует то, что тебе надо)и ее вызов, откомпилировать и заменить им стандартный стартовый код.

О подробностях не спрашивай — никогда такого не делал. Если сделаешь и получится — думаю, это будет интересным для многих, так что отпишись.
With best regards
Pavel Dvorkin
Re[6]: Зарегестрировать функции до вызова main
От: Pavel Dvorkin Россия  
Дата: 09.02.14 14:26
Оценка: :)
Здравствуйте, MTD, Вы писали:

MTD>Это твои догадки, а мне чтобы помочь автору, нужна была дополнительная информация от него. Если все так, как ты написал, то у автора проблема — нет никаких гарантий, что объекты не будут созданы раньше, чем пройдет регистрация, хоть и до main.


Судя по тому, что я знаю об авторе, догадаться написать нечто в самом начале main он смог бы и без чьей-то помощи. Если он задал вопрос — значит, ему нужно именно до main что-то сделать.
With best regards
Pavel Dvorkin
Re[6]: Зарегестрировать функции до вызова main
От: niXman Ниоткуда https://github.com/niXman
Дата: 09.02.14 14:28
Оценка:
в общем — хз о чем тут речь, но в линуксах можно такое: LD_PRELOAD
пачка бумаги А4 стОит 2000 р, в ней 500 листов. получается, лист обычной бумаги стОит дороже имперского рубля =)
Re[7]: Зарегестрировать функции до вызова main
От: MTD https://github.com/mtrempoltsev
Дата: 09.02.14 14:31
Оценка:
Здравствуйте, Pavel Dvorkin, Вы писали:

PD>Судя по тому, что я знаю об авторе, догадаться написать нечто в самом начале main он смог бы и без чьей-то помощи. Если он задал вопрос — значит, ему нужно именно до main что-то сделать.


Хорошо. Спасибо, что очень помог и ему и мне.
Re[7]: Зарегестрировать функции до вызова main
От: niXman Ниоткуда https://github.com/niXman
Дата: 09.02.14 14:35
Оценка:
Здравствуйте, Pavel Dvorkin, Вы писали:

PD>Судя по тому, что я знаю об авторе, догадаться написать нечто в самом начале main он смог бы и без чьей-то помощи. Если он задал вопрос — значит, ему нужно именно до main что-то сделать.

а остальные должны быть прорицателями?
пачка бумаги А4 стОит 2000 р, в ней 500 листов. получается, лист обычной бумаги стОит дороже имперского рубля =)
Re[2]: Зарегестрировать функции до вызова main
От: MTD https://github.com/mtrempoltsev
Дата: 09.02.14 14:35
Оценка:
Здравствуйте, Pavel Dvorkin, Вы писали:

PD>В BC++ 3.1 иожно было зарегистрировать некую функцию, которая вызывалась до main

PD>В VC++ я такого не знаю



PD>Единственно, что могу предложить умозрительно — взять исходники стартового кода (из которого вызывается main), добавить туда свою функцию (которая и регистрирует то, что тебе надо)и ее вызов, откомпилировать и заменить им стандартный стартовый код.


Вообще, вот такой подход — нахачить на ровном месте и получить кучу проблем, вместо нормального рефакторинга, характерно для студента, но никак не для разработчика с опытом.
Re[3]: Зарегестрировать функции до вызова main
От: Pavel Dvorkin Россия  
Дата: 09.02.14 14:41
Оценка:
Здравствуйте, MTD, Вы писали:

MTD>Вообще, вот такой подход — нахачить на ровном месте и получить кучу проблем, вместо нормального рефакторинга, характерно для студента, но никак не для разработчика с опытом.


Предложи свой способ вызвать некую функцию до main (хоть с рефакторингом, хоть с чем угодно) — тогда и поговорим. Пока что от тебя я вижу только совет, который годится не для minorlogic, а для некоего школьника, впервые узнавшего про язык C.
With best regards
Pavel Dvorkin
Re[2]: Зарегестрировать функции до вызова main
От: minorlogic Украина  
Дата: 09.02.14 14:42
Оценка:
Здравствуйте, niXman, Вы писали:

X>что значит "регистрация функций" ?


Имелось в виду записать ее имя (параметры) в внешнем хранилище.
... << RSDN@Home 1.2.0 alpha 5 rev. 1539>>
Ищу работу, 3D, SLAM, computer graphics/vision.
Re[8]: Зарегестрировать функции до вызова main
От: Pavel Dvorkin Россия  
Дата: 09.02.14 14:43
Оценка:
Здравствуйте, niXman, Вы писали:

PD>>Судя по тому, что я знаю об авторе, догадаться написать нечто в самом начале main он смог бы и без чьей-то помощи. Если он задал вопрос — значит, ему нужно именно до main что-то сделать.

X>а остальные должны быть прорицателями?

Я согласен, что ТС не очень четко сформулировал задачу, но никак не могу поверить, что он бы задал вопрос : как мне сделать что-то первым действием в main
With best regards
Pavel Dvorkin
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.