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

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

Войти
Регистрация
Восстановить пароль
 
kwas
0 / 0 / 0
Регистрация: 09.03.2008
Сообщений: 8
#1

Нужно ли писать 'this' в операторах - C++

17.03.2008, 22:07. Просмотров 879. Ответов 4
Метки нет (Все метки)

Нужно ли писать 'this' в операторах типа this->Edit1->Text = 'qqq' и чем отличается выполнение подобного оператора с 'this' и без него
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.03.2008, 22:07
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Нужно ли писать 'this' в операторах (C++):

Что нужно знать, чтобы писать сетевые приложения на C++? - C++
Здравствуйте! Скажите, пожалуйста, что нужно знать, чтобы писать сетевые приложения/программы на c++? На данный момент знаю STL, boost,...

Class для работы с дробными числами. Объяснить ( код писать не нужно ) - C++
Class для работы с дробными числами. Число должно быть представлено двумя полями: целая часть - целое со знаком, дробная часть - целое без...

Виртуальные функции (нужно ли во всех производных классах писать слово virtual?) - C++
Нужно ли во всех производных классах писать слово virtual? Или достаточно только один раз в базовом классе указать что функция...

Что нужно писать в угловых скобках после Smart в void main? - C++
Подскажите, что нужно писать в угловых скобках после Smart в void main ? #include <iostream> using namespace std; class A ...

Где нужно писать сообщение об ошибке, если ввели неправильное значение? - C++
простите за глупый вопрос, но где нужно писать сообщение об ошибке, если ввели неправильное значение, перепробовала кучу вариантов, никак ...

Синтаксис в операторах while и do while - C++
Всем драсте потихоньку балуюсь с++ мозг плавится слишком уж придирчивый язык к синтаксису,выкладываю мою писанину, вопрос собственно по...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
VitSoft
0 / 0 / 0
Регистрация: 25.09.2007
Сообщений: 92
18.03.2008, 00:27 #2
Hi !
ни чем не отличается, но когда вам надо передать указатель на текущий класс то передаете this

http://www.development.efficientit.com/
0
mobi_DI
0 / 0 / 0
Регистрация: 05.02.2008
Сообщений: 23
18.03.2008, 09:09 #3
При обращении без оператора
this переменная наченает искаться в текущем
контексте видемости.С оператором this обращение происщодит
без поиска.
Пример:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
//класс
class MyClass
{
     int X;          //   <-------------------|
     MyClass()                                |
     {                                        |
         int X;                               |
         {                                    |
               {                              |
                    int X;  //  <----|        |
                    X = 10; //  -----|        |
                    this->X = 20;//------------
               }
         }
     }
}test1;
0
kwas
0 / 0 / 0
Регистрация: 09.03.2008
Сообщений: 8
18.03.2008, 20:56  [ТС] #4
2 mobi_DI
так значит есть разница в выполнении этих кодов:
с указатилем 'this' код должен выполняться быстрее (теоретически).
Я правильно понял?
Но тогда возникает другой вопрос: увеличивается ли при этом экзэшник, или это распознавание происходит только во время компиляции.
0
mobi_DI
0 / 0 / 0
Регистрация: 05.02.2008
Сообщений: 23
19.03.2008, 09:58 #5
На этапе компиляции...
Все что определяется во время выполнения
программы относится к позднему связыванию
(см. виртуальные функции)
размер .EXE в этом случае меняется не значительно,
трудно сказать в кокую сторону-(зависит от оптимизации
компилятора)
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.03.2008, 09:58
Привет! Вот еще темы с ответами:

Путаница в операторах - C++
Что же возвращает 6-ая строка? BOOL String::Invariants() const { #ifdef SHOW_INVARIANTS cout &lt;&lt; &quot;Invariants Tested&quot; &lt;&lt; endl; ...

Подскажите в условных операторах - C++
подскажите пожалуйста Даны три вещественных числа. Вывести на экран: а) те из них, которые принадлежат интервалу (а-b), б)те из них,...

Есть ли ошибка в операторах - C++
Задано опис: FILE f1,f2; float f; long l; char c;Каждый вариант вопроса содержит фрагмент программы, использующей приведенные...

ошибка в условных операторах - C++
где здесь ошибка? #include &lt;iostream&gt; #include &lt;math.h&gt; using namespace std; int main() {


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
19.03.2008, 09:58
Ответ Создать тему
Опции темы

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