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

Перегрузка операторов, дружественные функции - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Строки... http://www.cyberforum.ru/cpp-beginners/thread200313.html
Дано символ. Определить и вывести слова, в которых встречается этот символ, и номер позиции, в которой он встречается первый раз.
C++ Решить линейное неравенство 1) Дано вещественное число — цена 1 кг конфет. Вывести стоимость 1.2, 1.4, …, 2 кг конфет. 2) Решить линейное неравенство axb для произвольных a и b. 3) Единицы длины пронумерованы следующим образом: 1 — дециметр, 2 — километр, 3 — метр, 4 — миллиметр, 5 — сантиметр. Дан номер единицы длины (целое число в диапазоне 1–5) и длина отрезка в этих единицах (вещественное число). Найти длину отрезка... http://www.cyberforum.ru/cpp-beginners/thread200312.html
Можно ли как то выводить трехмерную матрицу в консоли? C++
Можно ли как то выводить трехмерную матрицу в консоли? и как
Ввести длинную строку s1 и шаблон s подсчитать сколько раз входит шаблон s в строку s1 C++
Ввести длинную строку s1 и шаблон s подсчитать сколько раз входит шаблон s в строку s1. Вот что я написал: #include<iostream> #include<conio.h> #include<clocale> #include<string> using namespace std;
C++ Построчное перемещение курсора в текстовом файле http://www.cyberforum.ru/cpp-beginners/thread200290.html
Кусочек кода, см. комментарии switch(flag) { case'1': { f=fopen(value, "r"); //Открываем необходимый файл if (f!= NULL) printf("File opened.\n");
C++ Ошибки при компеляции d:\msvc\mfc\lib\mafxcwd.lib(appinit.cpp) : error L2029: 'GETFILETITLE' : unresolved external d:\msvc\mfc\lib\mafxcwd.lib(doccore.cpp) : error L2029: 'GETFILETITLE' : unresolved external d:\msvc\mfc\lib\mafxcwd.lib(afxinl1.cpp) : error L2029: 'PRINTDLG' : unresolved external d:\msvc\mfc\lib\mafxcwd.lib(dlgfile.cpp) : error L2029: 'GETOPENFILENAME' : unresolved external... подробнее

Показать сообщение отдельно
igorio4eg
 Аватар для igorio4eg
3 / 3 / 0
Регистрация: 01.03.2010
Сообщений: 83
29.11.2010, 21: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
#include <iostream>
#include <conio.h>
using namespace std;
class Numbers
{
    friend Numbers & operator--(Numbers &);
    friend Numbers operator-(Numbers & d, const Numbers & rhs);
public:
    Numbers(int numb = 1):number(numb) {} // Конструктор
    const Numbers & operator++();         // префиксная перегрузка ++
    Numbers operator+(const Numbers &);   // перегрузка +
    int GetNumber() const { return number; } 
private:
    int number;
};
const Numbers & Numbers::operator++()
{
    ++number;
    return *this;
}
Numbers Numbers::operator+(const Numbers & rhs)
{
    return Numbers(number + rhs.GetNumber()); 
}
Numbers & operator--(Numbers & d)
{
    --d.number;
    return d;
}
Numbers operator-(Numbers & d, const Numbers & rhs)
{
    return Numbers(d.number - rhs.GetNumber());
}
int main(void)
{
    Numbers n1, n2(10), n3;
    cout << "n1: " << n1.GetNumber() << endl;
    cout << "n2: " << n2.GetNumber() << endl << endl;
    n1++;  n2--;
    cout << "n1++: " << n1.GetNumber() << endl;
    cout << "n2--: " << n2.GetNumber() << endl << endl;
    n3 = n2 - n1;
    cout << "n3 = n2 - n1: " << n3.GetNumber() << endl << endl;
    n3 = n2 + n1;
    cout << "n3 = n2 + n1: " << n3.GetNumber() << endl;
 
    getch();
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 15:20. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru