Другие языки программирования и технологии

Для чего нужен указатель this и каков его принцип работы? Объясните пожалуйста самым простым языком, как 2+2.

Всем доброго времени суток!
Уважаемые, объясни пожалуйста ПРОСТЫМ языком, как 2+2, для чего нужен указатель this, его принцип работы. Пожалуйста, на простом языке. Перечитал кучу статей про него, но ничего не понимаю. В программировании не асс, но и не ламер, а понять не могу. Заранее благодарен Вам!
В каждом объекте содержится указатель this, который задан неявно, он указывает на адрес первого байта объекта в котором содержится, то есть ссылается на сам объект. А методы объекта имеют доступ к этому указателю.
С помощью указателя this можно узнать адрес объекта, получить доступ к данным объекта, и использовать его для возврата значений. Пример:
Sanho2014
Sanho2014
70 706
Лучший ответ
this - указатель на экземпляр класса. Нужен, чтобы с его помощью работать с полями и функциями динамически созданного экземпляра класса - а как иначе? Поскольку он нужен при этом всегда, он автоматически подставляется компилятором в большинстве случаев, поэтому явно его выписывают редко, например, чтобы определить операцию сложения для экземпляров класса c так, чтобы складывались поля a, можно написать так:
c operator+(c p){a+=p.a; return *this;}
Конечно, как всегда, на самом деле поймешь для чего нужно бывает его явно выписывать только когда он действительно понадобится. Один из простейших случаев я привел, хотя есть и более сложные. То есть нужда в явном выписывании this появляется только на достаточно высоком уровне владения языком, хотя знать об их существовании нужно.
Руслан Лукянов
Руслан Лукянов
74 462
Ну допустим у тебя textBox на форме
ты пишешь this->textBox1->Text это типа использовать "Этот" текст бокс (ну а точнее что в нем написано)

в C# например указывать "this" не обязательно ...просто пишешь textBox1.Text
AR
Amir Raxmatullayev
8 708