|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу. Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста". Название темы слишком короткое или не отражает сути вашего вопроса. Тема исчерпала себя, помните, один вопрос - одна тема Прочитайте правила и заново правильно создайте тему. |
|
Опции темы | Поиск в этой теме |
13.07.2011, 20:22 | #1 |
Форумчанин
Регистрация: 26.06.2009
Сообщений: 354
|
Прокоментируйте пару строк
Есть код:
Код:
|
13.07.2011, 20:37 | #2 | ||
Старожил
Регистрация: 15.02.2010
Сообщений: 15,760
|
Цитата:
Цитата:
|
||
13.07.2011, 20:40 | #3 | ||
Форумчанин
Регистрация: 30.10.2009
Сообщений: 114
|
Цитата:
Цитата:
Наверняка оператор == переопределен, так что смотри в нем, как сравниваются объекты. |
||
13.07.2011, 21:18 | #4 | |
Форумчанин
Регистрация: 26.06.2009
Сообщений: 354
|
Цитата:
|
|
13.07.2011, 21:24 | #5 | ||
Старожил
Регистрация: 15.02.2010
Сообщений: 15,760
|
Цитата:
Цитата:
|
||
13.07.2011, 21:32 | #6 | |
JAVA BEAN
Участник клуба
Регистрация: 22.04.2007
Сообщений: 1,329
|
Цитата:
Код:
|
|
13.07.2011, 21:34 | #7 | |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
Цитата:
Код:
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|
14.07.2011, 19:00 | #8 | |
Форумчанин
Регистрация: 01.07.2011
Сообщений: 423
|
Цитата:
this - это указатель на объект класса, который будет вызывать этот оператор. Каждый раз, когда вы вызываете нестатическую функцию-член класса, компилятор передает в нее в качестве первого параметра указатель на сам объект. То есть, чтобы было понятно, представим, что у вас есть некоторый класс class A; и выопределили в нем данную функцию-оператор. Далее, допустим, вы определяете два объекта этого класса: A a, b; а затем пишите логическое выражение a != b; Когда компилятор видет такое выражение, то он ищет соответствующую функцию для объектов типа class A, которая перегружает оператор !=. Фактически, он это выражение переписывает в виде a.operator !=( b ); На первый взгляд кажется, что в эту функцию передается один аргумент - переменная 'b'. На самом деле компилятор передает два аргумента: указатель на объект 'a', который обозначается как this и значение объекта 'b'.
Со мной можно встретиться на www.clipper.borda.ru
|
|
14.07.2011, 19:38 | #9 | |
Форумчанин
Регистрация: 11.07.2010
Сообщений: 914
|
Цитата:
Указатель this в отличие от остальных аргументов передается не через стек, а через регистр ECX. |
|
14.07.2011, 20:06 | #10 | |
Форумчанин
Регистрация: 01.07.2011
Сообщений: 423
|
Цитата:
Не несите всякую чушь! Никакого такого регистра ECX в стандарте языка С++ упомнинания нет! Более того, я вас разочарую, но очень много аппаратных платформ, где вообще такой мнемоники для регистра нет! Так что свои фантазии оставьте при себе! К языку программирования С++ они никакого отношения не имеют!
Со мной можно встретиться на www.clipper.borda.ru
|
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
прокоментируйте строчку... | Natashka Milashka | Общие вопросы Delphi | 4 | 20.05.2011 07:54 |
Прокоментируйте код | Romario92 | Общие вопросы C/C++ | 13 | 30.10.2010 22:49 |
Обьясните что делают и означают пару строк в программном коде! | FreeZeT | Общие вопросы C/C++ | 2 | 15.06.2010 03:20 |
Расшифровать подробно пару строк программы | prikolist | Общие вопросы C/C++ | 4 | 25.03.2009 22:50 |
Необходимо расшифровать пару строк программы | prikolist | Общие вопросы C/C++ | 12 | 19.03.2009 22:08 |