Форум программистов, компьютерный форум CyberForum.ru

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

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

Показать сообщение отдельно
nxtech
77 / 59 / 2
Регистрация: 26.06.2013
Сообщений: 198
30.06.2013, 19:28     Как реализовать метод ToString?
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
Сами же значения полей никак не проверяем (ни на длину, ни на соответствие шаблону), хотя в принципе можно (и нужно) было бы.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru