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

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ QT это чистый c++ или нет (C++ ISO/IEC)? http://www.cyberforum.ru/cpp-beginners/thread689212.html
Здравствуйте. Интересует вопрос. В Microsoft Visual Studio используется язык C++/CLI - доработанный C++ ими же. Как дела обстоят с QT? Там используется C++ ISO или какая-то его модификация?...
C++ Замена заданной текстовой строки Замена заданной текстовой строки на указанную текстовую строку в текстовых файлах заданного каталога Необходимо написать программу в которой бы создавались каталоги (5 штук) и файлы(5 штук на... http://www.cyberforum.ru/cpp-beginners/thread689209.html
move семантика C++
Сейчас стало появляться нечто вроде такого: class X { public: X (const X& lvalue); // copy constructor X (X&& rvalue); // move constructor X& operator= (const X& lvalue); // copy...
C++ CURL *curl;
CURL *curl; опишите подробно что здесь все это значит. Я на php только профи.
C++ BST of strings http://www.cyberforum.ru/cpp-beginners/thread689195.html
Задание реализовать для binary search tree string-ов функции add, find, print. struct tree{ string key; node * left; node * right; node * parent; };
C++ Модифицировать алгоритм QuickSort с использованием стека отложенных заданий логарифмической глубины Модифицировать алгоритм QuickSort с использованием стека отложенных заданий логарифмической глубины, реализованного через массив. Псевдокод StackQuickSort(A) stack<-1,length; while( depth>0) ... подробнее

Показать сообщение отдельно
mrstmf
0 / 0 / 0
Регистрация: 03.07.2012
Сообщений: 22

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

05.11.2012, 17:42. Просмотров 344. Ответов 3
Метки (Все метки)

Не могу заставить работать перегруженный оператор + в функции CMoveByVector

Point.h:
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
#define POINT_H
 
#include <iostream>
#include <conio.h>
#include <math.h>
using namespace std;
class Point
{
public:
      float x,y;
 
      Point ();
      Point (float a, float b);
      ~Point ();
      
      friend ostream& operator <<(ostream&, Point);
      
      Point& operator = (const Point&);
      Point& operator + (const Point&);
      
      void PChange (float a, float b);
};
 
#endif
Point.cpp:
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
#include "Point.h"
 
Point::Point () {x=0; y=0;};
Point::Point (float a, float b) {x=a; y=b;};
Point::~Point () {x=0;y=0;};
 
ostream& operator << (ostream& out, Point p)
{
         out<<"("<<p.x<<";"<<p.y<<")";
         return out;
};
 
Point& Point::operator = (const Point &p)
{
       this->x=p.x; this->y=p.y;
       return *this;
};
 
Point& Point::operator + (const Point &p)
{
       this->x=p.x; this->y+=p.y;
       return *this;
};
 
void Point::PChange(float a, float b) {this->x=a; this->y=b;};
circle.h:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include "Point.h"
 
class Circle
{
public:
      Point p(); 
      float r;
     
      Circle();//const without parametrs
      Circle(float a, float b, float c);//const with parametrs
      ~Circle ();//destr
      
      void CMoveByVector (float a, float b);//move circle by vector (0,0)(a,b)
      void CMoveByPoint (float a, float b);//move circle to (a,b)
      void CChange (float c);//change radius of circle
      void CRotate ();//rotate cicrle (r u fucking kidding me?)
};
circle.cpp
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include "circle.h"
#include "Point.cpp"
 
Circle::Circle () {p(); r=0;}
Circle::Circle (float a, float b, float c) {r=c;}
Circle::~Circle () {r=0;}
 
void Circle::CMoveByVector (float a, float b) 
{
     Point t(a,b); 
     p=p+t; 
     cout<<t;
}
void Circle::CMoveByPoint (float a, float b) {/*p.PChange(a,b);*/}
void Circle::CChange (float c) {r=c;};
void Circle::CRotate () {};
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru