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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Y4enik
2 / 2 / 0
Регистрация: 22.03.2015
Сообщений: 32
#1

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

20.07.2016, 09:29. Просмотров 195. Ответов 6
Метки нет (Все метки)

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

Что такое "перегрузка операторов"? Каковы принципы работы перегруженных операторов и назначение указателя this - C++
Добрый день . Помогите понять принцип работы перегрузки операторов. объясните пожалуйста в зависимости от чего зависит агрумент при...

Перезагрузка операторов "неоднозначный operator" - C++
Не знаю в ту ли группу пишу, но все же.... Для моего класса есть несколько операторов присвоения const MyStr& operator +=(const MyStr&...

Перегрузка "operator =" для шаблона класса - C++
как правильно перегрузить operator= для щаблона, по идее я принимаю 2 ссылки на объекты этого класса и возвращаю 1 из них ... что-то не...

Перегрузка внешней функции операции "operator=" - C++
1) Возможна ли перегрузка внешней функцией операции "operator="? Чтобы скажем выполнить нечто: int = объект 2) Компилятор (mingw)...

Перегрузка операторов "+" и "-" и бинарных - C++
здраствуйте помогите пожалуйста перегрузить операторы + и - бинарные у меня есть 2 списка "ск" и "сн"; и число "ч" в мейне это...

Класс "Дроби" и перегрузка операторов для этого класса - C++
Всем Доброго времени суток. Есть учебная задача по условиям которой необходимо реализовать класс "Дроби" и перегрузку операторов для...

6
notAll
430 / 151 / 36
Регистрация: 27.05.2016
Сообщений: 407
Завершенные тесты: 2
20.07.2016, 10:19 #2
Y4enik, видимо в зависимости от ситуации. &, например, должны возвращать префиксные операторы, оператор *, а указатель(*) - оператор стрелка(->).
0
shilko2013
244 / 221 / 118
Регистрация: 02.04.2016
Сообщений: 855
Завершенные тесты: 1
20.07.2016, 10:37 #3
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Y4enik, Я читал Шилдта и там написано:
"тип имя_класса::operator#(список_аргументов)
{
операция_над_классом
}
"Здесь перегружаемый оператор обозначается символом #
Читайте статью до конца.
0
Y4enik
2 / 2 / 0
Регистрация: 22.03.2015
Сообщений: 32
20.07.2016, 12:06  [ТС] #4
C++
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 ставится *, а где-то нет
0
shilko2013
244 / 221 / 118
Регистрация: 02.04.2016
Сообщений: 855
Завершенные тесты: 1
20.07.2016, 12:14 #5

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

Добавлено через 10 секунд
Прочтите про указатели темы...
0
Y4enik
2 / 2 / 0
Регистрация: 22.03.2015
Сообщений: 32
20.07.2016, 12:16  [ТС] #6
void возвращает?
0
shilko2013
244 / 221 / 118
Регистрация: 02.04.2016
Сообщений: 855
Завершенные тесты: 1
20.07.2016, 12:22 #7
void (C++)

Если ключевое слово void указывает возвращаемый тип функции, оно означает, что данная функция не возвращает никакого значения. Если оно используется для списка параметров функции, оно означает, что функция не принимает никаких параметров. Если оно используется в объявлении указателя, оно означает, что указатель является "универсальным".
Если указатель имеет тип void *, он может указывать на любую переменную, объявленную без указания ключевого слова const или volatile. Указатель с ключевым словом void не может быть разыменован, кроме как путем приведения к другому типу. Указатель с ключевым словом void может быть преобразован в любой другой тип указателя на данные.
В C++ указатель с ключевым словом void может указывать на функцию, но не на класса.
Объявить переменную типа void невозможно.
1
20.07.2016, 12:22
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.07.2016, 12:22
Привет! Вот еще темы с ответами:

Перегрузка операторов для класса "множество целых чисел" - C++
Собственно, в этом и вопрос. Как перегрузить операторы "+" и "-" для объединение и разности двух множеств?

Перегрузка операторов в классе "Последовательность целых чисел" - C++
Добрый день! Столкнулся с таким заданием: "Создать класс «последовательность целых чисел». Элементы последовательности хранить в...

Перегрузка операторов (==, <<, >>, +) для класса "Денежная сумма" - C++
Реализовать класс «Денежная сумма». Данные класса: размер суммы, код валюты, курс по отношению к доллару. Операции: сложение двух сумм,...

Класс "Матрица": конструктор, деструктор и перегрузка операторов - C++
Матрица – KMatrix Методы: конструкторы, деструктор; операции: , =, ==, !=,...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.