Здравствуйте, zlobnik, Вы писали:
Z>Здравствуйте, korzey, Вы писали:
Z>А что если сделать ответ в ввиде еленмнтав перечисления, т.е. я так понимаю, что есть некий набор констант , который может прингимамать входной параметр, ну и поппробуй ввести собственное перечисление. Я так лично думаю.
Нет. Есть некий базовый класс. Есть функция, скажем
bool SomeTest(/*const*/ BaseObj obj)
где я даю гарантию, что функция ничего не изменит в проверяемом объекте, который от этого класса унаследован(т.е НИ перечисление, НИ структура не подходят). Плюс, для меня проверка: компилятор не "собирает" код, где меняется "неизменяемый" объект, а вываливается с сообщением.
ЗЫЖ В принципе, в "ша(р)пке" сильно не хватает "константных" определений...
bool function(const SomeObject obj)
или
class AnotherObject
{
...
bool isLive() const;