есть и в константной версии и в "обычной"( к примеру метод at(), есть char& funcName(...), так и const char& funcName(...) const ). Один из них вызывается в зависимости от самого обращения в функциях к ним или процес более сложный здесь?
для константный объектов вызываются константные версии методов. и вся хитрость
А если не константный объект вызывает, к примеру at(), но только чтоб получить данные(без изменений), все равно неконстантная версия будет вызвана?
Больше нет никаких нюансов в этом вопросе? Если нет, то спасибо за ответ
есть еще ref квалификаторы методов. интересуетесь?
тогда все
Это когда примерно так? struct Data { void foo (int&&) &&; };
Всё-таки лекции Владимирова - вещь! Я только там видел информацию об этом.
А чего "да" , когда "НЕТ" ?
иди бухать дальше
А если не константный объект вызывает, к примеру at(), но только чтоб получить данные(без изменений), все равно неконстантная версия будет вызвана? да, будет вызвана неконстантая версия
@anatolijs , если метод вызывается с НЕ константным объектом, то "только чтобы получить данные" уже не катит, этого нет в коде, это намерение вызова, который программист НЕ может выразить в коде вообще.
А, ну да. НЕ константная, ладно, свободен пока...
Вот я удивляюсь, Толя, как так ты ВСЕГДА СУМЕЕШЬ ВЫКРУТИТЬСЯ?
блин, Илья, что за предъява? я ответил на конкретно заданный вопрос. чего ты докопался?
Обсуждают сегодня