Когда писать explicit30.03.2012, 17:24. Показов 31173. Ответов 12
Метки нет (Все метки)
Зачем нужен explicit разобрался. Но, возник вопрос: зачем его писать? когда Вы его пишете? вроде я как-то обходился без него
0
|
|
| 30.03.2012, 17:24 | |
|
Ответы с готовыми решениями:
12
когда в конце несколько ответов то что нужно писать чтоб они через пробел выдавались Когда нужно писать скобки после функции а когда нет? |
|
601 / 569 / 104
Регистрация: 07.11.2010
Сообщений: 2,004
|
|
| 30.03.2012, 17:26 | |
|
когда конструктор один, и нужно вызывать именно его
1
|
|
|
601 / 569 / 104
Регистрация: 07.11.2010
Сообщений: 2,004
|
|
| 30.03.2012, 17:28 | |
|
иначе поля пустые будут либо не тем, чем надо проинициализируются
1
|
|
|
1675 / 1047 / 174
Регистрация: 27.09.2009
Сообщений: 1,945
|
||||||
| 30.03.2012, 18:46 | ||||||
|
Вот пожалуйста:
2
|
||||||
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|||||||||||
| 30.03.2012, 18:51 | |||||||||||
Сообщение было отмечено как решение
Решение
9
|
|||||||||||
|
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
|
| 30.03.2012, 19:44 | |
|
1
|
|
| 31.03.2012, 12:16 [ТС] | ||||||
|
да, panicwassano, можете разъяснить? а то непонятно, когда использование важно на результате, а не на ошибках компилятора.
Ну и если используется
0
|
||||||
|
Каратель
|
||||||
| 31.03.2012, 13:45 | ||||||
|
использую explicit (как уже было сказано) для запрета неявного преобразования и соответсвенно избежания вызова конструктора копии
2
|
||||||
|
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
|
| 31.03.2012, 18:20 | |
|
Не по теме: Мне лично интересно, что скажет именно panicwassano. Я не понял, что он имел ввиду... Добавлено через 4 минуты Кстати, вторая строка в коде Jupiterа любым вменяемым компилятором будет преобразована в вызов всего лишь одного конструктора - конструктора инициализации (ЕМНИП это даже оговорено в стандарте), однако если отправить конструктор копии в privat-секцию или оставить без реализации, код не скомпилируется (это всё с учётом того, что конструктора мы не объявляли как explicit), потому что фактически конструктор копии не нужен (компилятор всегда обходится без него), но формально это преобразование происходит через конструктор копии, поэтому он должен быть доступен. Добавлено через 4 минуты Прошу прощения, если оставить конструктор копии без реализации, но оставить его в public-секции, всё будет работать. Для компилятора главное, чтобы конструктор копии при таком вызове был доступен, он не будет пытаться его вызывать.
2
|
|
|
601 / 569 / 104
Регистрация: 07.11.2010
Сообщений: 2,004
|
|||||||||||
| 31.03.2012, 19:46 | |||||||||||
|
silent_1991 я неправильно может выразился я имел ввиду это
Конструктор может быть помечен как явный при помощи ключевого слова explicit , чтобы запретить возможность его неявного вызова в ситуациях, вроде следующих:
1
|
|||||||||||
|
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
|
| 31.03.2012, 19:53 | |
|
panicwassano, не эквивалентно, если только второй параметр у конструктора CCounter не задан по умолчанию. Писать explicit имеет смысл только для тех конструкторов, которые могут быть вызваны с одним аргументом. Заметьте, я говорю "могут быть вызваны", потому что они могут принимать и 10 параметров, но если все, кроме первого, заданы по умолчанию, то конструктор можно вызвать с одним аргументом, и если он не объявлен как explicit, то такой конструктор можно использовать и для неявного преобразования.
Тем не менее я понял, что вы имели ввиду в 4 посте, хотя это только один из возможных побочных эффектов, проявляющийся, к тому же, только при определённых условиях. Я так и не понял, что имелось ввиду во 2-м посте, но ладно, оставим это))
3
|
|
| 31.03.2012, 19:53 | |
|
Помогаю со студенческими работами здесь
13
Учимся писать грамотно: правописание местоимений - когда пишется "вы", а когда "Вы"? когда писать php код Когда начинать писать Платону? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут.
В век Веб все очень привыкли к дизайну Single-Page-Application .
Быстренько разберем подход "на фреймах".
Мы делаем одну. . .
|