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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
YarikZinchenko
0 / 0 / 0
Регистрация: 11.03.2014
Сообщений: 6
#1

Перегрузка операторов ( класс CMyString ) где-то ошибка - C++

25.05.2014, 22:07. Просмотров 158. Ответов 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
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
49
50
51
52
53
54
55
56
57
#include <iostream>
#include <cstring>
#include<conio.h>
 
 
using namespace std;
 
 
class CMyString 
{
    char *s;
    int len;
public:
    CMyString() {s = new char[1]; len = 0;}
    CMyString(int n) {s = new char[n+1];    len = n;}
    CMyString (char* p) 
    {
        len = strlen(p);
        s = new char[len+1];
        strcpy(s,p);
    }
    ~CMyString() {delete[]s;}
    void create(char* str);
    int length() {return len;}
    void show() {cout << s << endl;}
    CMyString& operator+=(CMyString &string);
};
 
 
 
int main() 
{
    CMyString a; a.create("Zinchenko"); a.show();
    CMyString b(8); b.create("Zinchenko"); b.show();
    CMyString c("Good luck!"); c.show();
    a+=b;
    a.show();
    _getch();
    return 0;
}
 
void CMyString::create(char* str) 
{
    if (len != strlen(str)) 
    {
        delete[] s;
        len = strlen(str);
        s = new char[len+1];
    }
    strcpy(s,str);
}
 
CMyString& CMyString::operator+=(CMyString &s)
{
    *this=*this+s;
    return *this;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.05.2014, 22:07     Перегрузка операторов ( класс CMyString ) где-то ошибка
Посмотрите здесь:

Перегрузка операторов. Класс String - C++
Зравствуйте! У меня есть вопрос. Реализовать класс String для работы со строками символов. Память под строку выделять автоматически....

Где в программе перегрузка операторов? - C++
Подскажите где в этой программе перегрузка операторов и для чего она вообще нужна? ...

Перегрузка операторов. Учусь. Ошибка - C++
перегрузка операторов.. ЗАДАНИЕ: М2=М1-V – из М1 удалить строки, сумма элементов которых больше суммы элементов V. где V- массив,...

Перегрузка банарных операторов (ошибка) - C++
Есть класс матрица в ней нужно реализовать перегрузку оператора +. Вот код класса. Компилятор выдаёт ошибку class Matrix { ...

Ошибка в классе матриц (перегрузка операторов) - C++
уважаемые форумчане, помогите, пожалуйста, найти ошибку в коде пишу класс на матрицы довольно объемный по содержанию, во всяком случае...

Реализовать класс строки CMyString и приложение для тестирования этого класса - C++
Реализовать класс строки CMyString и приложение для тестирования этого класса. Класс должен иметь поле pStr - указатель на хранимую строку...

Реализовать класс строки CMyString и приложение для тестирования этого класса - C++
Реализовать класс строки CMyString и приложение для тестирования этого класса. Класс должен иметь поле pStr - указатель на хранимую строку...

Перегрузка оператора =. Где ошибка? - C++
должно работать так: если строка в первом объекте больше 5 символов, то во втором объекте будет подстрока до первого пробела. #include...

Перегрузка ввода где ошибка - C++
Доброго времени суток. Не понимаю где ошибка в перегрузке ввода(&gt;&gt;):wall:. Перегрузка вывода работает отлично. Кусок кода. ...

Перегрузка операторов >>, << - C++
Помогите перегрузить операторы ввода и вывода в классе Time. (Я совсем-совсем новичек...)Заранее всем спасибо.class Time { friend...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru