|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
04.02.2011, 20:12 | #1 |
Форумчанин
Регистрация: 18.04.2009
Сообщений: 688
|
Решил снова перейти с шарпа на плюсы. УЖе год как программировал на шарпе, пришлось вспомнить С++. Языки очень похожие, но разщличия всё-таки есть.
Подскажите, пожалуйста, имеется у меня класс Window, а в нём переменная variable, какая разница между запиьсю в конструкторе this->variable и variable Код:
Последний раз редактировалось Stilet; 05.02.2011 в 15:52. |
04.02.2011, 21:14 | #2 | ||
Форумчанин
Регистрация: 31.01.2011
Сообщений: 160
|
Цитата:
Цитата:
те разницы нет |
||
04.02.2011, 21:18 | #3 |
Форумчанин
Регистрация: 18.04.2009
Сообщений: 688
|
есть класс Window,а в нём методы имеются, допустим, m1() и m2();
из метода m1 хочу вызвать метод m2. Какая разница в вызове этого метода, если я его вызову: window::m2(); this->m2(); m2(); Тоже никакой? |
04.02.2011, 21:31 | #4 |
Форумчанин
Регистрация: 31.01.2011
Сообщений: 160
|
принципиально никакой
просто запись window::m2(); //так обычно вызывают статические методы и методы из родительского класса this->m2(); //ну я даже не знаю принципиально повода так вызывать |
04.02.2011, 21:39 | #5 |
Форумчанин
Регистрация: 18.04.2009
Сообщений: 688
|
Спасибо. А ключевое слово static означает то же самое что и в C# ? Т.е. метод static- это метод, не требующий создания экземпляра класса (объекта)?
У меня, кстати, компилятор что-то стал ругаться после добавления слова static Код:
Код:
1 IntelliSense: a storage class may not be specified here c:\documents and settings\dimarik\мои документы\visual studio 2010\projects\blokirator\blokirator \window_components.cpp 72 |
04.02.2011, 21:40 | #6 | ||
Линуксоид
Участник клуба
Регистрация: 31.07.2009
Сообщений: 1,403
|
Я об этом писал:
Некоторые так делают, чтобы по одному взгляду на код было понятно, что мы работает с полем этого объекта. А ещё этим пользуются для обхода так называемого variable shadowing: Код:
Цитата:
Цитата:
Я схожу с ума или это глючит реальность?
Jabber ID: obey@obey.su Последний раз редактировалось Obey-Kun; 04.02.2011 в 21:42. |
||
04.02.2011, 22:00 | #7 |
Форумчанин
Регистрация: 31.01.2011
Сообщений: 160
|
Dimarik, static в определении писать не надо, только в описании класса
связано это с тремя почти противоположными смыслами static в ++се |
04.02.2011, 23:52 | #8 | |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
Цитата:
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|
05.02.2011, 00:40 | #9 |
Форумчанин
Регистрация: 31.01.2011
Сообщений: 160
|
Пепел Феникса, да ктож их читает =)
|