Цитата(neiver @ Jan 12 2011, 13:05)

А что именно не работает? Память не выделяется? Конструктор не вызывается? Указатель на неверный адрес указывает?
Что-то типа int *a = new int[10]; работает?
Судя по всему не вызывается коструктор. Так ведь в куче проектах работает именно третий вариант, указатель на объект глобальный а требуемый конструктор, определяемый например по опросу ключа, вызывается в main. Если я правильно понимаю, что если бы были проблемы с недостатком памяти не работал бы и глобальный объект.
Цитата(sergeeff @ Jan 12 2011, 13:17)

Автор хочет, чтобы это работало до main(). A это невозможно. Внутри любой функции - пожалуйста.
Поясните, почему, хочется глобальным иметь указатель на объект, а конструктор вызывать где надо и удалять объект (по необходимости ) где надо.