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

бинарные и унарные операторы - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Создание собственного формата файла http://www.cyberforum.ru/cpp-beginners/thread432794.html
Я уверен что данный вопрос уже рассматривался на форуме но поискав ничего такого не смог найти. По этому поясню что мне надо. Появилась желание написать простенькую консольную СУБД - это я сделал. Но данные она хранит в текстовых файлах к тому же каждый тип столбца это отдельный файл. Это очень не удобно и если можно так сказать не безопасно:) Захотел доработать проектик. Данные должны хранится...
C++ Определить, встречаются ли ключевые слова в тексте 1. Заданы текст и три ключевых слова. Определить, встречаются или нет ключевые слова в тексте. 2. Сформировать список из вещественных чисел. Упорядочить список по возрастанию http://www.cyberforum.ru/cpp-beginners/thread432784.html
Преобразование string в int C++
нужно текст (string) из textBox преобразовать в число (int)
Функции, Домино, Как!!? C++
Как написать проект, в котором случайным образом рисуется кость домино, а затем все кости, которые к ней можно присоединить? Как можно написать что то подобное? Буду очень благодарен за помощь!
C++ шифратор методом магического квадрато http://www.cyberforum.ru/cpp-beginners/thread432745.html
Здравствуйте. На учебе дали задание и листинг программы она шифрует текст в файле методом магического квадрата. нужно изменить ее таким оброзом,что оно должна шифровать не текст, а любые файлы побитно. // #include "stdafx.h" #include "Matrix.h" void encode(char *magicSquareFileName, char *inputFileName, char *outputFileName); // зашифровать void decode(char *magicSquareFileName, char...
C++ Поиск, считывание и замена символов в файле [C++] И снова здраствуйте! Нужно, чтобы программа находила в файле число от 0 до 5120, а после считывала оттуда данные после точки, присваивала их определенной переменной, опять считывала данные после точки, присваивала их, потом искала следующее число, и опять... И то же самое, только вместо присваивания переменной происходила бы замена определенного элемента после точки. Отрывок из кода : { ... подробнее

Показать сообщение отдельно
rangerx
1908 / 1517 / 139
Регистрация: 31.05.2009
Сообщений: 2,876
22.01.2012, 16:08     бинарные и унарные операторы
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
#include <iostream>
 
class integer
{
    private:
        int value_;
 
    public:
        integer(int value)
            : value_(value)
        {
 
        }
 
        int get_value() const
        {
            return value_;
        }
};
 
//------------- унарный минус
int operator-(const integer& lhs)
{
    return -lhs.get_value();
}
 
//------------- бинарный бинус
int operator-(const integer& lhs, const integer& rhs)
{
    return lhs.get_value() - rhs.get_value();
}
 
//-------------
int main()
{
    integer a = 15;
    integer b = 10;
 
    // унарный минус
    std::cout << -a << "\n";           // обычная форма
    std::cout << operator-(a) << "\n"; // явный вызов функции
 
    // бинарный минус
    std::cout <<  a - b << "\n";          // обычная форма
    std::cout << operator-(a, b) << "\n"; // явный вызов функции
}
Если операторы перегружены как члены класса, то операнд стоящий слева в списке параметров не указывается, его роль выполняет вызывающий объект.
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
#include <iostream>
 
class integer
{
    private:
        int value_;
 
    public:
        integer(int value)
            : value_(value)
        {
 
        }
 
        // унарный минус
        int operator-() const
        {
            return -value_;
        }
 
        // бинарный минус
        int operator-(const integer& rhs) const
        {
            return value_ - rhs.value_;
        }
};
 
//-------------
int main()
{
    integer a = 15;
    integer b = 10;
 
    // унарный минус
    std::cout << -a << "\n";            // обычная форма
    std::cout << a.operator-() << "\n"; // явный вызов метода
 
    // бинарный минус
    std::cout <<  a - b << "\n";         // обычная форма
    std::cout << a.operator-(b) << "\n"; // явный вызов метода
}
 
Текущее время: 18:34. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru