Форум программистов, компьютерный форум, киберфорум
Наши страницы

Как реализовать метод ToString? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Перенос на новую строку http://www.cyberforum.ru/cpp-beginners/thread913064.html
У меня довольно длинная функция класса, которая от меня то и не зависит, но нужно её вписать, строка получается длинная и хочется перенести на новую строчку часть, вот пример:...
C++ Функция textattr в С++ Здравствуйте. Функция которая задает одновременно цвет текста и фона. В Интернете очень мало информации про нее, обьясните как ее используют, какие параметры передают и т.п. Спасибо. http://www.cyberforum.ru/cpp-beginners/thread913060.html
Вызов функции в ребенке C++
Доброе время суток. Есть класс A и в нем есть функция void funcA(void). И есть каласс B : public A который унаследует A. Но когда я пишу в конструкторе класса B у меня выводит ошибку о нарушении...
C++ Изменить строку – во всех словах, имеющих нечетное количество символов, средний символ удалить
Дана строка символов. Изменить строку – во всех словах, имеющих нечетное количество символов, средний символ удалить. #include <iostream> #include <string.h> #include <cstdlib> using...
C++ Жадный алгоритм на графе http://www.cyberforum.ru/cpp-beginners/thread913028.html
Собственно, нужно написать программу поиска кратчайшего пути на графе "жадным методом". То есть, дан ориентированный взвешенный граф (можно и неориентированый, как получится) и у рёбер даны их длины...
C++ Запись класса в файл Доброго времени суток! Вот появился тупик, есть базовый класс и производные классы class Figure{ protected: int x,y; TColor color; int size; int type; ... подробнее

Показать сообщение отдельно
nxtech
77 / 59 / 2
Регистрация: 26.06.2013
Сообщений: 198
30.06.2013, 19:28
is >> s Посимвольно извлекает из потока is символы в строку s, добавляя их в конец s. Извлечение символов выполняется до первого пробельного символа (или пока не будет достигнут конец). Т.е. в s сохраняется слово (которое во входной строке отделено от других слов, в вашем случе, символом табуляции).
while (is >> s) Извлечение слов продолжается пока есть символы в потоке. В начале каждого цикла содержимое s перезаписывается.

Я исходил из той логики, что все поля являются обязательными и, если входная строка содержит более ("Vanya\tIvanov\t+72222222222\tvanya@mail.ru\???") или менее ("\t+72222222222\tvanya@mail.ru") 4-х полей, то входные данные не верны. В этом случае изменение объекта не выполняется и метод возвращает false.
Условие > 4 полей проверяется в цикле:
C++
1
if (v.size() == num_of_fields) return false; // если из входной строки уже извлекли 4 поля, а еще присутствует 5-е, то возвращаем false
Условие < 4 полей проверяется после цикла:
C++
1
if (v.size() < num_of_fields) return false; // если из входной строки извлекли менее 4 полей, то возвращаем false
Сами же значения полей никак не проверяем (ни на длину, ни на соответствие шаблону), хотя в принципе можно (и нужно) было бы.
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.