Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > C++

Ответ
 
Опции темы
Старый 09.01.2010, 18:29   #16
Knightmare
Дэвелопер
 
Регистрация: 14.02.2007
Сообщений: 1,471
Написано 824 полезных сообщений
(для 2,920 пользователей)
Ответ: Вопрос-задачка

А теперь вопрос мой:
как можно в объявлении класса (к примеру если оно в отдельном файле) сразу объявить глобальный объект?
В объявлении класса глобальный объект - никак. Это бред сам по себе, т.к. глобальный объект предполагает инстанцирование в единственном экземпляре. Хотя с другой стороны, класс может содержать статичный член своего же типа. Так же, в большинстве случаев, глобальная переменная тупо не нужна (например ее делают для какого-то менеджера ресурсов или типа того). Можно (и нужно) юзать синглтон. Тривиальная реализация - закрываем конструктор и деструктор, класс хранит статичный указатель на созданный объект и статичный метод для доступа к нему. Грубо говоря:
class MySingleton
{
private:
    static 
MySingleton _instance;
private:
    
MySingleton();
    
MySingleton(const MySingleton other);
    
MySingleton operator =(const MySingleton other);
    ~
MySingleton();
public:
    static 
MySingleton Instance()
    {
        if(
_instance == NULL_instance = new MySingleton();
        return 
_instance;
    }
};

MySingleton MySingleton::_instance NULL
При желании у Александрески довольно подробно расписаны синглтоны. Но не рекомендую открывать его книги пока, моск сгорит.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Harter (09.01.2010)
Старый 09.01.2010, 19:12   #17
Praedo
Оператор ЭВМ
 
Аватар для Praedo
 
Регистрация: 16.12.2009
Адрес: Днепропетровск
Сообщений: 27
Написано 7 полезных сообщений
(для 17 пользователей)
Ответ: Вопрос-задачка

Нашел конспект, чудом.

там было написано вот так:

class Stone
{
public:
int a;
Stone();
~
Stone();
}
obj
Что происходит в этом случае? Вроде бы он объявляется
__________________
В разработке RPG! При первой демке напишу темку.
Программист - тварь ленивая, но хитрая!
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 03:09.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com