Delphi vs C++ vs C#
, ну и Java немножко, где-то ближе к старшему байту номеров страниц
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
| ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
| [216.73.216.192] |
|
|
Правила раздела:
| Страницы: (495) « Первая ... 55 56 [57] 58 59 ... 494 495 ( Перейти к последнему сообщению ) |
Delphi vs C++ vs C#
, ну и Java немножко, где-то ближе к старшему байту номеров страниц
|
Сообщ.
#841
,
|
|
|
|
Откуда угодно. Может глобальный (синглтон), может в параметрах, может коллбэком получил, может из собственных полей |
|
Сообщ.
#842
,
|
|
|
|
Цитата --Ins-- @ Откуда угодно. Может глобальный (синглтон), может в параметрах, может коллбэком получил, может из собственных полей Нельзя его изменить, уже ведь написали, я даже код привел, который повторяет твой хитрый сценарий |
|
Сообщ.
#843
,
|
|
|
|
А если ссылка на него является членом текущего? |
|
Сообщ.
#844
,
|
|
|
|
--Ins--, ты просто заморачиваешься на других объектах, а тебе объясняют что в константных методах состояние объекта *this изменить нельзя...
|
|
Сообщ.
#845
,
|
|
|
|
Цитата --Ins-- @ Если он глобальный или из параметров, то какое отношение его изменение имеет к изменению (точнее, к не изменению) текущего константного объекта? Если он из "собственных полей", то вызвать можно только его константные методы. Откуда угодно. Может глобальный (синглтон), может в параметрах, может коллбэком получил, может из собственных полей |
|
Сообщ.
#846
,
|
|
|
|
Цитата --Ins-- @ Откуда угодно. Может глобальный (синглтон), может в параметрах, может коллбэком получил, может из собственных полей Еще раз. const гарантирует сохранение состояния собственно объекта и его полей. Он не может гарантировать неизменность переменной в другом потоке в другом процессе. Глобальные объекты могут меняться всегда, так как они объявлены однократно и без использования семантики const. Параметры могут меняться в том случае если переданы не как const. Добавлено Короче показывай уже кодом, как ты хотел сломать наш сиплюсплюс. |
|
Сообщ.
#847
,
|
|
|
|
Цитата --Ins-- @ Тогда компилятор позволит вызвать только его константные методы, в который раз уже повторяю. А если ссылка на него является членом текущего? |
|
Сообщ.
#848
,
|
|
|
|
Цитата KILLER @ а тебе объясняют что в константных методах состояние объекта *this изменить нельзя... Это я понимаю, что явно нельзя. А косвенно? Цитата KILLER @ Нельзя его изменить Мне показалось, что D_KEY говорит что можно |
|
Сообщ.
#849
,
|
|
|
|
|
Сообщ.
#850
,
|
|
|
|
Цитата --Ins-- @ Это я понимаю, что явно нельзя. А косвенно? Через жопу - можно, тебе еще D_KEY об этом говорил Но будет UB |
|
Сообщ.
#851
,
|
|
|
|
Цитата --Ins-- @ Госспади, вы никогда компоновщик не использовали? У меня в каждом проекте по сто раз. Древовидная структура, да блин, компоненты на форме древовидную иерархию образуют Пэрэнт-Чайлд Какой говнокод, акстись ![]() Конечно, использовали. Там все будет в порядке с const. Ты, похоже, не совсем понял все-таки. |
|
Сообщ.
#852
,
|
|
|
|
Цитата --Ins-- @ Глобальный -- сразу говнокод. Если передали в парамерах -- то защита класса в твоих руках. Гарантии получаются абсолютно аналогично -- константностью параметров. Если откуда то получил и из собственных полей, то и вызвать сможешь только константные методы. Константные методы вызываемого смогут вызвать только константные методы твоего. Откуда угодно. Может глобальный (синглтон), может в параметрах, может коллбэком получил, может из собственных полей |
|
Сообщ.
#853
,
|
|
|
|
Цитата Adil @ Тогда компилятор позволить вызвать только его константные методы, в который раз уже повторяю. Ясно, а если не член текущего? Возможность вызывать константные методы только на члены распространяется? Добавлено Цитата Повстанець @ Глобальный -- сразу говнокод Эээ, прошу прощения, что именно говнокод? Наличие в программе глобальных объектов? |
|
Сообщ.
#854
,
|
|
|
|
Цитата --Ins-- @ Если он со "стороны", то его изменение не изменяет "текущий" объект. Ясно, а если не член текущего? Возможность вызывать константные методы только на члены распространяется? |
|
Сообщ.
#855
,
|
|
|
|
Цитата --Ins-- @ Нет. Использование их без логической связи. Эээ, прошу прощения, что именно говнокод? Наличие в программе глобальных объектов? |