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