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

Перегрузка оператора + - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Извлечение из класса поля которое является множеством (set) http://www.cyberforum.ru/cpp-beginners/thread1003272.html
Здравствуйте! У меня есть класс одно из полей которого множество (set<Something> SomethingSet). Я хочу передать это множество в функцию и для этого нужно создать гетер. Может кто подсказать как создать функцию возвращающую это множество из класса?
C++ Изменить тип списка Здравствуйте. Нужна помощь с изменением типа списка. Я сделал программу для обработки списка но как оказалось не того типа. Нужно переделать эту программу под индексный список. читал об этом в сети как то не очень понял. #include<iostream> #include<conio.h> #include<stdlib.h> #include<time.h> using namespace std; struct sp { int p1,p2; sp *pnt; http://www.cyberforum.ru/cpp-beginners/thread1003271.html
Исправте ошибки в программе C++
#include<math.h> #include<stdio.h> #include<Windows.h> int main(){ int x,y,z,n; for (int x=0;x<=1000;x++); for (int y=0;x<=1000;y++); for (int z=0;z<=1000;z++); printf("n?\n"); scanf("%d",&n);
C++ Создать объект класса Круг
Создать объект класса Круг, используя классы Точка, Окружность. Методы: создать, удалить, вывести на экран, изменение радиуса, определение принадлежности точки данному кругу, определение площади. Предусмотреть меню, позволяющее продемонстрировать заданные операции. Не могу сделать так что бы программа не удаляла введенные ранее кординаты и радиус, ( то есть когда я во 2ой раз начинаю вводить...
C++ Удаление 1 строки из другой http://www.cyberforum.ru/cpp-beginners/thread1003232.html
Можно ли удалить 1 строку из другой с помощью операции '-' ? В функции oper() при попытке выдаются ошибки: error C2784: '_D __cdecl std::operator -(const class std::reverse_iterator<_RI,_Ty,_Rt,_Pt,_D> &,const class std::reverse_iterator<_RI,_Ty,_Rt,_Pt,_D> &)' : could not deduce template argument for 'const class error C2676: binary '-' : 'class std::basic_string<char,struct...
C++ Вещественные переменные Как указать вещественный тип переменной? подробнее

Показать сообщение отдельно
Сонца
 Аватар для Сонца
23 / 23 / 6
Регистрация: 20.06.2013
Сообщений: 83
10.11.2013, 13:54  [ТС]     Перегрузка оператора +
castaway,
Тогда подскажите где я не права?
Через дебагер удалось узнать, что tmp в operator+ получается нужный, но до main не доходит или не присваивается.
C++
1
2
3
4
5
6
7
8
9
int main()
{
    String sg1 ("Hello world");
    String sg2 (", hello friend!");
    String sg3;
    sg3 = sg1 + sg2;
 
    return 0;
}
Tulosba,


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
class String
{
    enum {Max = 80};
    char * str;
    int size;
public:
    String ();
    String (int);
    String (char *);
    String (const String & obj);
    ~String();
    void UserFill ();
    void Print ();
    String operator + (String & sg2);
    String operator = (String & sg2);
};
String::String ()
{
    str = nullptr;
    size = 0;
}
String::String (int size)
{
    str = new char [size];
    this->size = size;
}
String::String (char * str)
{
    this->str = new char [size = (strlen (str) + 1)];
    strcpy (this->str, str);
}
String::String (const String & obj) : size (obj.size)
{
    str = new char [size];
    strcpy (str, obj.str);
}
String::~String()
{
    delete []str;
    size = 0;
}
String String::operator + (String & sg2)
{
    String tmp;
    tmp.str = new char [tmp.size = size + sg2.size];
    strcpy (tmp.str, str);
    strcat (tmp.str, sg2.str);
    return tmp;
}
String String::operator = (String & sg2)
{
    return String (sg2);
}
 
Текущее время: 22:01. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru