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

Классы строк, массивы преобразование и т.д - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Вводится последовательность целых чисел, 0 её конец http://www.cyberforum.ru/cpp-beginners/thread896381.html
Очень прошу помощи в решении данной задачи : Вводится последовательность целых чисел, 0 конец последовательности. Для каждого числа последовательности найти сумму его простых делителей (нахождение суммы простых делителей числа оформить как функцию). Буду очень признателен тем, кто не откажет в помощи.
C++ Перегрузка функций (Создать класс Set ) Создать класс Set – множество целых чисел, используя динамическую память. Определить операторы работы с множествами: "+" – объединение, "*" – пересечение, "-" вычитание, как дружественные функции, а "+=" – включение нового элемента в множество, "==" – сравнения на равенство, и др. как методы класса. Определить операторы "<<" и ">>". Также определить функцию определения принадлежности элемента... http://www.cyberforum.ru/cpp-beginners/thread896374.html
C++ Сосчитать количество слов в файле с русским текстом ; количество слов, которые начинаются с заданного буквосочетания.
Нужна программа чтобы нормально работала через Borland c++ Сосчитать количество слов в файле с русским текстом ; количество слов, которые начинаются с заданного буквосочетания.
Описать структуру с именем NOTE C++
Описать структуру с именем NOTE, содержащую поля: - фамилия и имя; - номер телефона; - дата рождения (массив из трех чисел). Написать программу, выполняющую следующие действия: - ввод с клавиатуры данных в массив, состоящий из 5 структур типа NOTE; - вывод на экран информации о людях, чьи дни рождения совпадают с введенными с клавиатуры; - если таких людей нет, вывести соответствующее...
C++ Завтра курсовая! Составить команду из четырёх лучших бегунов для участия в эстафете 4х100 http://www.cyberforum.ru/cpp-beginners/thread896360.html
Элементы вещественного массива размером N содержат результаты забега на 100 м N спортсменов, измеренные в сек. Составить команду из четырёх лучших бегунов для участия в эстафете 4х100 (указать номера четырёх спортсменов). Помогите мне, пожааалуйста.
C++ MPI сложение матриц Здравствуйте, вот такое задание, посчитать сумму матриц, распараллелив на кластере. Я не могу понять как правильно реализовать этот случай так, что бы автоматически считалось на разном количестве подключаемых узлов, при этом распределить вручную я могу. У меня есть 2 варианта реализации, распределить с помощью функции MPI_Bcast (в этом случае не пойму как можно будет... подробнее

Показать сообщение отдельно
rangerx
1908 / 1517 / 139
Регистрация: 31.05.2009
Сообщений: 2,876
09.06.2013, 19:16     Классы строк, массивы преобразование и т.д
Вы забываете про символ '\0' при копировании строки(то, что вы сделали во второй версии конструктора). А вообще, более корректно было бы сделать так
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
LINE& operator= (const LINE& rhs)
{
    // проверяем не присваивается ли объект самому себе
    if(&rhs == this)
        return *this;
 
    // сначала пробуем выделить память
    // (Здесь может возникнуть исключение(ошибка). До этого момента важно не менять состояние(поля) объекта...
    // ...чтобы после обработки исключения он не оказался в некоррекном состоянии)
    char* tmp = new char[rhs.dlinna_stroki + 1]; 
 
    // если предыдущая строка выполнилась нормально, освобождаем память
    delete[] stroka; 
 
    // копируем новое содержимое в только что выделенную область памяти...
    // ...и присваиваем указатель на неё указателю strokа
    stroka = strcpy(tmp, rhs.stroka);
 
    dlinna_stroki = rhs.dlinna_stroki;
 
    // возвращаем ссылку на самого себя(стандартное поведение оператора =)
    return *this; 
}
И исправьте
C++
1
LINE(char *massiv)
C++
1
char *get_stroka() const
на
C++
1
LINE(const char *massiv)
C++
1
const char *get_stroka() const
 
Текущее время: 17:10. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru