![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
Litkevich Yuriy |
![]()
Сообщение
#21
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
=1=
ViGOur, у меня компилер ругается на такую строчку, из твоего варианта "одиночки":
говорит так: Цитата singleton.h:26: error: ISO C++ forbids declaration of `operator=' with no type я его пока закоментировал и вроде проблем не испытываю, но хочется чтоб все было правильно, что нужно исправить? =2= Обязательно ли мои методы, не отоносящиеся к основным "одиночки" типа InitInstance() и FreeInstance(), помечать как sttic? |
|
|
Andrew Selivanov |
![]()
Сообщение
#22
|
![]() Участник ![]() ![]() Группа: Участник Сообщений: 249 Регистрация: 9.10.2007 Из: Москва Пользователь №: 3 Спасибо сказали: 15 раз(а) Репутация: ![]() ![]() ![]() |
=1= ViGOur, у меня компилер ругается на такую строчку, из твоего варианта "одиночки":
говорит так: Цитата singleton.h:26: error: ISO C++ forbids declaration of `operator=' with no type я его пока закоментировал и вроде проблем не испытываю, но хочется чтоб все было правильно, что нужно исправить? Попробуй вот так специфицировать
|
|
|
ViGOur |
![]()
Сообщение
#23
|
![]() Мастер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 3296 Регистрация: 9.10.2007 Из: Москва Пользователь №: 4 Спасибо сказали: 231 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
Litkevich Yuriy |
![]()
Сообщение
#24
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
тогда вот так ругается :
Цитата singleton.h:26: warning: no return statement in function returning non-void хоть и не ошибка, но неприятно. |
|
|
LuckLess |
![]()
Сообщение
#25
|
Студент ![]() Группа: Новичок Сообщений: 31 Регистрация: 10.10.2007 Пользователь №: 8 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
return *this;
|
|
|
Litkevich Yuriy |
![]()
Сообщение
#26
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
LuckLess, да вот так:
вообще не ругается |
|
|
LuckLess |
![]()
Сообщение
#27
|
Студент ![]() Группа: Новичок Сообщений: 31 Регистрация: 10.10.2007 Пользователь №: 8 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
еще такой вариант синглтона..
Причина редактирования: поправил тег: code=cpp, так нагляднее
|
|
|
Litkevich Yuriy |
![]()
Сообщение
#28
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
а для чего int I, она ведь неиспользуется, в шаблоне?
|
|
|
LuckLess |
![]()
Сообщение
#29
|
Студент ![]() Группа: Новичок Сообщений: 31 Регистрация: 10.10.2007 Пользователь №: 8 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
для того чтобы ты мог создать два разных синглтона, одного типа.
например у тебя есть class User; ты хочеш чтобы был скажем глобальный залогиненный юзер - пишеш typedef LLSingleton<User> LoggedUser; далее ты хочеш еще иметь некого глобального юзера, под которым программа имеет доступ к базе.. пишеш typedef LLSingleton<User, 1> DbUser; получиш два разных синглтона, которые оба возвращают User*. |
|
|
Litkevich Yuriy |
![]()
Сообщение
#30
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
с каждым днем начинаю понимать пользу от единственного экземпляра класса, раньше думал: "пиши окуратно и дело с концом", а на практике выходит, что окуратность особо и не причем
![]() |
|
|
![]() ![]() ![]() |
![]() |
Текстовая версия | Сейчас: 18.2.2025, 7:07 |