besh]<a
13 / 11 / 1
Регистрация: 02.11.2009
Сообщений: 194
|
||||||
#1 | ||||||
Указатели и перегруженные операторы - C++10.05.2012, 21:46. Просмотров 742. Ответов 11
Метки нет Все метки)
(
Когда перегружается какой нибудь оператор, допустим квадратные скобки, то для использования оператора нужно писать такую конструкцию:
0
|
|
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
|
10.05.2012, 21:46 |
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Указатели и перегруженные операторы (C++):
11
Не работают перегруженные операторы - C++ Перегруженные функции и операторы - C++ Перегруженные логические операторы И, ИЛИ - C++
Перегруженные потоковые операторы при наследовании - C++
|
besh]<a
13 / 11 / 1
Регистрация: 02.11.2009
Сообщений: 194
|
|
10.05.2012, 23:15 [ТС] | #3 |
HighPredator, что именно?...
0
|
HighPredator
|
||||||
10.05.2012, 23:33 | #4 | |||||
Во-первых, в вашем коде obj это тип данных, поэтому строка 3 превращается в большой вопрос. Во-вторых, перегрузка операторов придумана для того, чтобы не изголяться при вызове. Покажу на примере:
0
|
besh]<a
13 / 11 / 1
Регистрация: 02.11.2009
Сообщений: 194
|
||||||
11.05.2012, 00:14 [ТС] | #5 | |||||
HighPredator,
попробуйте теперь так
0
|
alex_x_x
бжни
2454 / 1659 / 84
Регистрация: 14.05.2009
Сообщений: 7,162
|
||||||
11.05.2012, 00:34 | #7 | |||||
0
|
besh]<a
13 / 11 / 1
Регистрация: 02.11.2009
Сообщений: 194
|
|
11.05.2012, 01:20 [ТС] | #8 |
HighPredator, вообще то не совсем...
(*obj)[3] просто я в билдере не встречал такой записи
0
|
taras atavin
3887 / 1761 / 92
Регистрация: 24.11.2009
Сообщений: 27,566
|
||||||
11.05.2012, 07:40 | #9 | |||||
![]()
0
|
besh]<a
13 / 11 / 1
Регистрация: 02.11.2009
Сообщений: 194
|
|
11.05.2012, 19:34 [ТС] | #10 |
taras atavin, ну это уже явный вызов, зачем тогда вообще перегружать оператор?
Почему бред? У меня в билдере требуется такая запись...
0
|
modwind
52 / 52 / 1
Регистрация: 09.03.2012
Сообщений: 101
|
|
11.05.2012, 19:48 | #11 |
Если позволить писать obj[0], из контекста не будет понятен тип переменной obj (то, что это указатель). И вообще, для указателей [0] означает обратиться к первому элементу массива. Попробуй obj[0][0] ![]()
1
|
besh]<a
13 / 11 / 1
Регистрация: 02.11.2009
Сообщений: 194
|
|
12.05.2012, 21:55 [ТС] | #12 |
modwind, спасибо именно это я хотел услышать. Я так и делал вначале, но это совсем ужасно...
0
|
12.05.2012, 21:55 | |
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
|
12.05.2012, 21:55 |
Привет! Вот еще темы с ответами:
12
Класс вектор с арифметическими операциями, перегруженные операторы - C++ Какие методы и перегруженные операторы поддерживает std::set? - C++ Наследование, перегруженные операторы ввода-вывода, динамический массив - C++ Почему перегруженные операторы ввода/вывода нельзя сделать членами класса? - C++ Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |