Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
ввод через cin нескольких параметров в один метод класса
|
|||
|---|---|---|---|
|
#18+
возможно ли такое? ибо компилятор говорит, что так делать нельзя. хотелось бы узнать как правильно это делается. пример кода: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. возможно ,стоит переоформить сам метод? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2012, 14:54 |
|
||
|
ввод через cin нескольких параметров в один метод класса
|
|||
|---|---|---|---|
|
#18+
Возможно стоит почитать какую-то книжку на предмет изучения базовых принципов построения потоков ввода-вывода в C++. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2012, 15:11 |
|
||
|
ввод через cin нескольких параметров в один метод класса
|
|||
|---|---|---|---|
|
#18+
Если вы планируете вводить номер и имя (только) из стандартного ввода, то зачем вам аргументы у input()? И зачем сам метод, если задача - для конструктора? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2012, 15:15 |
|
||
|
ввод через cin нескольких параметров в один метод класса
|
|||
|---|---|---|---|
|
#18+
напиши метод: Код: sql 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.11.2012, 16:00 |
|
||
|
ввод через cin нескольких параметров в один метод класса
|
|||
|---|---|---|---|
|
#18+
воспользую пока последним советом. просто хотелось знать можно ли посылать в метод несколько аргументов(без их ввода из самого метода), чтоб была возможность выбрать способа ввода(из стандартного потока ввода, из каких-либо функций, из других переменных) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2012, 00:45 |
|
||
|
ввод через cin нескольких параметров в один метод класса
|
|||
|---|---|---|---|
|
#18+
Violet-n-redвоспользую пока последним советом. просто хотелось знать можно ли посылать в метод несколько аргументов(без их ввода из самого метода), чтоб была возможность выбрать способа ввода(из стандартного потока ввода, из каких-либо функций, из других переменных)Пиши еще методы: Код: plaintext 1. 2. 3. 4. 5. Можно посылать в метод несколько аргументов, только ИМХО это неправильно: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. Когда через пол года придется добавить в класс phone еще данные, то придется переписать phone::set_data(int n, ...) и отыскать все 10 мест в программе и переписать еще и там... В первом варианте придется периписать один метод void phone::set_data_from_keyboard(). Остальная часть программы останется неизменной. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2012, 03:41 |
|
||
|
ввод через cin нескольких параметров в один метод класса
|
|||
|---|---|---|---|
|
#18+
в общем картна ясна. благодарю за объяснение! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2012, 17:05 |
|
||
|
ввод через cin нескольких параметров в один метод класса
|
|||
|---|---|---|---|
|
#18+
Violet-n-red, Вы начали правильно потом свернули не туда. Правильно это делается так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2012, 14:01 |
|
||
|
ввод через cin нескольких параметров в один метод класса
|
|||
|---|---|---|---|
|
#18+
sherzod_ Код: plaintext 1. 2. Это еще зачем? Это было бы нужно только в древних компиляторах без argument dependent lookup. Но там скорее всего и неймспейсов нет :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2012, 15:16 |
|
||
|
ввод через cin нескольких параметров в один метод класса
|
|||
|---|---|---|---|
|
#18+
Anatoly Moskovskysherzod_ Код: plaintext 1. 2. Это еще зачем? Это было бы нужно только в древних компиляторах без argument dependent lookup. Но там скорее всего и неймспейсов нет :) А вдруг кто-то решит сделать вот так: Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2012, 15:41 |
|
||
|
ввод через cin нескольких параметров в один метод класса
|
|||
|---|---|---|---|
|
#18+
sherzod_Anatoly Moskovskyпропущено... Это еще зачем? Это было бы нужно только в древних компиляторах без argument dependent lookup. Но там скорее всего и неймспейсов нет :) А вдруг кто-то решит сделать вот так: Код: plaintext 1. Я глубоко сомневаюсь что кому-то может понадобиться взятие адреса у неквалифицированного оператора >> (с учетом что их в С++ объявлено множество только в стандартной библиотеке). Даже необходимость просто явного вызова под вопросом: Код: plaintext 1. Хотя в последнем случае ADL работает нормально, т.к. аргументы доступны. Короче. В любом случае, загромождать этими неотносящимися к делу конструкциями учебную программу не стоит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2012, 17:02 |
|
||
|
ввод через cin нескольких параметров в один метод класса
|
|||
|---|---|---|---|
|
#18+
Anatoly Moskovsky, Ваши сомнения безосновательны (еще и потому что скобки в данном случае были показаны как средство запрета ADL, а не взятие адреса). Как вы сами сказали именно операторов вводы вывода в потоки объявлено великое множество и не только в стандартной библиотеке. Типичнейший пример, сериализация и логирование. Совсем недавно сталкивался с этим, коллизии функций вывода в архив и в лог. Привычка пояснять локально в функции какие именно операторы в намерены использовать это просто не просто культура и поэтому очень даже педагогично, это еще и профилактика проблем. Короче. Убедить вам меня не удастся поэтому можете сразу переходить к оскроблениям :) (с). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2012, 17:24 |
|
||
|
ввод через cin нескольких параметров в один метод класса
|
|||
|---|---|---|---|
|
#18+
sherzod_, ok, не адрес, а запрет ADL. Поясните на примере зачем он нужен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2012, 17:30 |
|
||
|
ввод через cin нескольких параметров в один метод класса
|
|||
|---|---|---|---|
|
#18+
Anatoly Moskovsky, я честно говоря не знаю зачем он нужен. Предполагаю что для разрешения конфликтов имен. А привел я его в качестве конструкции показывающей что код _без_ локального using не равнозначен коду _с_ ним. Зачем использую сам локальный using я уже пояснил. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2012, 17:37 |
|
||
|
ввод через cin нескольких параметров в один метод класса
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. А нельзя избежать как-то перечисления всех членов в операторе? А то ведь всегда можно какой-то забыть при изменении класса. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2012, 02:47 |
|
||
|
ввод через cin нескольких параметров в один метод класса
|
|||
|---|---|---|---|
|
#18+
избежать перечисления Код: plaintext 1. 2. 3. 4. 5. 6. 7. А нельзя избежать как-то перечисления всех членов в операторе? А то ведь всегда можно какой-то забыть при изменении класса.Неа, нельзя. И хорошо, что нельзя. Если есть много классов выводимых в потоки лучше подумать над использованием какой-нибудь надстройки вроде google::protobuf. Есть еще различные библиотеки сериализации предлагающие рулет из макросов вроде MFC, но имхо это разовый код, не разобраться потом что к чему. Хотя можно попробовать занятие интересное. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2012, 08:07 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=38050509&tid=2020646]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
186ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
| others: | 14ms |
| total: | 284ms |

| 0 / 0 |
