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

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

Восстановить пароль Регистрация
Другие темы раздела
C++ Арифметические операции. Дополнительный код http://www.cyberforum.ru/cpp-beginners/thread1140039.html
суть проблеммы в следующем. лаба. Операции с числами в доп. коде (доп. код - то каким способом хранятся целые числа на большинстве/многих/всех компьютерах). Проблемы возникли в начале. Отрицание Операция отрицания числа, представленного в прямом коде, выполняется очень просто - нужно инвертировать значение знакового разряда. Если же число представлено в дополнительном коде, отрицание...
C++ Перенос в новый массив #include <iostream>; #include<locale> using namespace std; int rl1,rl2,mas1,k,x=-4000,mas2,p,j,mas3,q,mas4,s,i,t,v; int main() { setlocale(LC_ALL,"Rus"); int a; cin>>a; for(int i=0;i!=a;i++) http://www.cyberforum.ru/cpp-beginners/thread1140036.html
Проверка переменной на целый тип C++
Есть массив; нужно ввести элементы; элементы должны быть целыми; Как это проверить, что если это символ или числа+символы, или символы+число, то выдать ошибку и по новой пусть вводит.
C++ Калькулятор (MFC). Как можно реализовать "backspace" в текстовом боксе
Пишу калькулятор в visual studio с++ и столкнулся с такими проблемами: 1) В задании есть условие "написать программу на MFC". Это как? :sorry: 2) Не могу понять алгоритма вычисления процентов на стандартном калькуляторе Windows. Разъясните, пожалуйста, дубу %-) Добавлено через 2 минуты Ой-ой-ой! По привычке написал сюда :swoon:
C++ Шаблоны проектирования при создании карт http://www.cyberforum.ru/cpp-beginners/thread1140026.html
Итак,читаю про шаблоны проектирования,для меня это что-то новое,поэтому я решил сразу же по практиковаться,но тут возникли проблемы с тем,что я не могу выбрать где и какой шаблон использовать и использовать ли его вообще? Хочу написать в консоле программу для создание карт.Заключается она в том,что на экране появляется матрица из цифр 0(0-обозначает пустоту).Кнопками стрелок я могу двигаться по...
C++ Запутался в типах Как правильно указать типы для вывода нормального, верного ответа? Как правильно задерживать консоль? #include <iostream> #include <complex> using std::cout; using std::cin; using std::endl; //Каша... float a, h, e; подробнее

Показать сообщение отдельно
lemegeton
 Аватар для lemegeton
2910 / 1339 / 133
Регистрация: 29.11.2010
Сообщений: 2,720
06.04.2014, 15:04     Перегрузка операторов в классе
Метод print добавьте сами -- рука не поднимается.
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
#include <cmath>
#include <iomanip>
#include <iostream>
 
class Point {
 public:
  Point() : x(0), y(0) {}
  Point(double x, double y) : x(x), y(y) {}
  double getX() const { return x; }
  double getY() const { return y; }
 
  double getDistanceTo(const Point &other) const {
    return std::sqrt(std::pow(getX() - other.getX(), 2.) +
      std::pow(getY() - other.getY(), 2.));
  }
  
  friend Point operator+(const Point &point, double x) {
    return Point(point.getX() + x, point.getY());
  }
 
  friend double operator-(const Point &a, const Point(b)) {
    return a.getDistanceTo(b);
  }
 
  friend std::ostream &operator<<(std::ostream &stream, 
    const Point &point) {
    return stream << "(" << 
      std::fixed << std::setprecision(3) <<
      point.getX() << "," << 
      std::fixed << std::setprecision(3) <<
      point.getY() << ")";
  }
 private:
  const double x;
  const double y;
};
 
int main(int, char**) {
  Point a(1, 1), b(3, 3);
  std::cout << "Distance from " << a  << " to " << b << " is " <<
    (a - b) << std::endl;
  std::cout << a << " + " << 5 << " = " << (a + 5) << std::endl;
  return 0;
}
 
Текущее время: 12:36. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru