![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| zss |
|
||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 708 Регистрация: 17.6.2004 Репутация: 1 Всего: 2 |
Обычно если делаю обертку над типом, то ввожу оператор, чтоб можно было использовать его в других функциях
ЧТо не очень хорошо. Вот shared_ptr позволяет например делать так
или так
но что-то не нашел этих операторов. Как он делает. Если для !smart понятно, что нужен оператор!, то вот для проверки if(smart) не понятно. |
||||||
|
|||||||
| Alek86 |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1299 Регистрация: 30.1.2007 Где: Киев Репутация: 21 Всего: 25 |
boost?
shared_ptr::operator bool () const |
|||
|
||||
| mes |
|
|||
|
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 144 Всего: 250 |
см operator bool() и его товарищей : http://www.boost.org/doc/libs/1_38_0/boost/shared_ptr.hpp |
|||
|
||||
| zss |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 708 Регистрация: 17.6.2004 Репутация: 1 Всего: 2 |
ааа... вот он гад какой |
|||
|
||||
| GoldFinch |
|
||||
![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2141 Регистрация: 30.11.2008 Репутация: 15 Всего: 26 |
http://www.boost.org/doc/libs/1_43_0/libs/...htm#conversions
Это сообщение отредактировал(а) GoldFinch - 14.5.2010, 10:02 |
||||
|
|||||
| xvr |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 60 Всего: 223 |
Добавлю к посту GoldFinch - голый operator bool() (который тут упоминали) не используется потому, что bool может быть неявно преобразован в целое, что делает возможным применить к smart любые арифметические операции с непредсказуемым (ну или по крайней мере явно неправильным) результатом
|
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |