Re[2]: Про идентичность const
От: Shmj Ниоткуда  
Дата: 29.01.25 17:33
Оценка:
Здравствуйте, Кодт, Вы писали:

К>Вот смотри. Пусть у тебя воистину константа

К>
К>class Konst {};

К>const Konst* k1 = new const Konst();
К>const Konst* k2 = new const Konst();

К>assert(*k1 == *k2);  // эквивалентность значений - это мы и так уже ожидаем
К>assert(k1 == k2);  // идентичность объектов - то, что хочешь внедрить ты

К>// а теперь страшное!
К>delete k1;
К>delete k2;  // ведь мы сделали два new, - значит, и два delete должны
К>


Когда const char* = "text" — все понимают что удалять нельзя — это норм, потому что все понимают что это настоящая константа.

Но уже понятно что в C++ настоящих констант нет. Возможно и добавят что-то типа immutable лет через 10.
=сначала спроси у GPT=
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.