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

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

Восстановить пароль Регистрация
Другие темы раздела
C++ Конфликт имён в ромбовидном наследовании http://www.cyberforum.ru/cpp-beginners/thread1030426.html
class A { private: int a; public: A(a0) : a(a0) {} } class B1 : virtual public A { private: int b; int c;
C++ Возможно ли сделать такой массив в c++ Здравствуйте. Можно ли в С++ сделать динамический ассоциативный массив, вроде этого на Javascript: var cars = ; cars = ; cars = 'BMW'; cars = 20000; cars = ; cars = 'Aston Martin'; cars = 50000; http://www.cyberforum.ru/cpp-beginners/thread1030405.html
Транслитерация c++ C++
Здравствуйте, есть часть задания, где нужно реализовать замену кирилици на латинь (Ввод: дом, вывод: dom). Подскажите самый простой способ.
C++ Доделать программу
Помогите дорешать задачку, пожалуйста. Система из n материальных точек в пространстве задана с помощью последовательности действительных чисел x1,y1,z1,p1,x2,y2,z2,p2,......xn,yn,zn,pn-координаты i-ой точки,а pi-ее вес(i=1,2,....,n). Получить координаты центра тяжести системы. Мой код. В двумерном массиве mas строки - 4 параметра каждой координаты точки системы, столбцы - нумерация точек...
C++ Конструктор копирования и оператор присваивания http://www.cyberforum.ru/cpp-beginners/thread1030387.html
Спасибо всем тем, кто заглянул на огонек. Проблема: Реализовать конструктор копирования и оператор присваивания для класса User. Вопрос: В чем разница между конструктором копирования и оператором присваивания? #ifndef MYSKYPE_H #define MYSKYPE_H #include <string> using namespace std;
C++ построить на экране Елку 1. построить на экране Елку подробнее

Показать сообщение отдельно
egor2116
 Аватар для egor2116
337 / 368 / 42
Регистрация: 20.01.2013
Сообщений: 1,100
06.12.2013, 14:37     Перегрузка операторов!
Ну, как то так

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
58
59
60
61
62
63
64
65
#include <iostream>
 
class String
{
  private:
          char * str;
  public:
         String(char * _str = NULL)
         {
           str = new char[strlen(_str)];
           strcpy(str,_str);
         }
         
         String(const String & string)
         {
           str = new char[strlen(string.getString())];
           strcpy(str, string.getString());
         }
         
         ~String()
         {
           delete [] str;
           str = NULL;
         }
         
          char * getString()const { return str; }
          void print()
          {
               std::cout << str;
          }
          
          int operator <=(const String & str1)
          {
               return strcmp(str, str1.getString()); 
          }
         
         
};
 
 int main()
 {
   
       String a("string 1");
       String b("string 2");
       
       a.print(); std::cout << std::endl;
       b.print(); std::cout << std::endl;
       
       
       /*
       ГЎГ®Г«ГјГёГҐ Г*óëÿ, åñëè ïåðâГ*Гї ñòðîêГ* áîëüøå âòîðîé;
 
       - 0 (Г*óëü), åñëè ñòðîêè Г°Г*ГўГ*Г»;
 
       - ìåГ*ГјГёГҐ Г*óëÿ, åñëè ïåðâГ*Гї ñòðîêГ* ìåГ*ГјГёГҐ âòðîé.       
       */
       if(a <= b)
          std::cout << "a <= b" << std::endl;
          
       a.print(); std::cout << std::endl;
       b.print(); std::cout << std::endl;
          
     system("PAUSE");
     return 0;
 }
 
Текущее время: 01:45. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru