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

Перегрузка операторов: "operator #" - C++

Восстановить пароль Регистрация
 
Y4enik
2 / 2 / 0
Регистрация: 22.03.2015
Сообщений: 32
20.07.2016, 09:29     Перегрузка операторов: "operator #" #1
Здравствуйте, подскажите пожалуйста. перегрузка оператора выглядит: void operator # (int i)
В учебнике Шилдт перед словом operator ставится либо * либо &. Подскажите, для чего?
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.07.2016, 09:29     Перегрузка операторов: "operator #"
Посмотрите здесь:

C++ Перегрузка operator+
C++ перегрузка operator<<
Перегрузка operator= C++
C++ Перегрузка operator->()
Странная перегрузка операторов (Error: ambiguous overload for 'operator[]') C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
notAll
176 / 65 / 16
Регистрация: 27.05.2016
Сообщений: 182
Завершенные тесты: 2
20.07.2016, 10:19     Перегрузка операторов: "operator #" #2
Y4enik, видимо в зависимости от ситуации. &, например, должны возвращать префиксные операторы, оператор *, а указатель(*) - оператор стрелка(->).
shilko2013
 Аватар для shilko2013
237 / 214 / 115
Регистрация: 02.04.2016
Сообщений: 812
Завершенные тесты: 1
20.07.2016, 10:37     Перегрузка операторов: "operator #" #3
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Y4enik, Я читал Шилдта и там написано:
"тип имя_класса::operator#(список_аргументов)
{
операция_над_классом
}
"Здесь перегружаемый оператор обозначается символом #
Читайте статью до конца.
Y4enik
2 / 2 / 0
Регистрация: 22.03.2015
Сообщений: 32
20.07.2016, 12:06  [ТС]     Перегрузка операторов: "operator #" #4
C++ (Qt)
1
2
3
4
5
6
гЂЂгЂЂvoid *operator new(size_t size);
гЂЂгЂЂvoid *operator new[](size_t size);
гЂЂгЂЂvoid operator delete(void *p);
гЂЂгЂЂvoid operator delete[](void *p);
гЂЂгЂЂvoid show();
};
где-то перед operator ставится *, а где-то нет
shilko2013
 Аватар для shilko2013
237 / 214 / 115
Регистрация: 02.04.2016
Сообщений: 812
Завершенные тесты: 1
20.07.2016, 12:14     Перегрузка операторов: "operator #" #5

void * - функция возвращает указатель.
void - функция ничего не возвращает.

Добавлено через 10 секунд
Прочтите про указатели темы...
Y4enik
2 / 2 / 0
Регистрация: 22.03.2015
Сообщений: 32
20.07.2016, 12:16  [ТС]     Перегрузка операторов: "operator #" #6
void возвращает?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.07.2016, 12:22     Перегрузка операторов: "operator #"
Еще ссылки по теме:

Перегрузка operator-> () C++
Перегрузка operator[]= C++
C++ Перегрузка operator<()

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
shilko2013
 Аватар для shilko2013
237 / 214 / 115
Регистрация: 02.04.2016
Сообщений: 812
Завершенные тесты: 1
20.07.2016, 12:22     Перегрузка операторов: "operator #" #7
void (C++)

Если ключевое слово void указывает возвращаемый тип функции, оно означает, что данная функция не возвращает никакого значения. Если оно используется для списка параметров функции, оно означает, что функция не принимает никаких параметров. Если оно используется в объявлении указателя, оно означает, что указатель является "универсальным".
Если указатель имеет тип void *, он может указывать на любую переменную, объявленную без указания ключевого слова const или volatile. Указатель с ключевым словом void не может быть разыменован, кроме как путем приведения к другому типу. Указатель с ключевым словом void может быть преобразован в любой другой тип указателя на данные.
В C++ указатель с ключевым словом void может указывать на функцию, но не на класса.
Объявить переменную типа void невозможно.
Yandex
Объявления
20.07.2016, 12:22     Перегрузка операторов: "operator #"
Ответ Создать тему
Опции темы

Текущее время: 03:34. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru