Почему еще не not_null не попал в стандарт C ++?C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Почему еще не not_null не попал в стандарт C ++?

Сообщение Anonymous »

После добавления комментария "// не null" к необработанному указателю на № в шаблоне Not_null . std :: массив создан перед самими основными руководящими принципами, но иногда сметается). Учитывая его относительную простоту, почему еще не not_null (или что -то подобное) не попало в стандарт? Я не помню, чтобы столкнулся с любыми случаями, когда она предотвратила бы ошибку в коде, над которой я работал, когда мы стараемся не писать код таким образом. Библиотеки поддержки кажутся немного менее популярными. < /P>
Например, Boost был доступен в качестве пакета на Linux с самого начала. Я не знаю о какой -либо реализации GSL. Хотя я предполагаю, что он связан с визуальным C ++ в Windows. < /P>

, поскольку люди спрашивали в комментариях. Это предпочтительно было сделано с нулевыми накладными расходом (возможно, во время компиляции только для ограниченного количества случаев). < /P>
Я думал в основном о случае необработанной переменной элемента указателя. Я забыл о случае передачи указателя на функцию, для которой я всегда использую ссылку на означающую не-null, а также означает «я не беру владение». Это может быть слишком высоким уровнем, хотя. Вы можете использовать участников ссылок вместо указателей, чтобы документировать это. Я сам избегаю ссылочных участников, потому что почти всегда хочу копируемые и назначимых типов. Тем не менее, см., Например, я предпочитаю указатели или ссылки в данных члена? Для некоторого обсуждения этого. < /p>
Другое измерение заключается в том, может ли другой объект изменить переменную.
«const» говорит, что я обещаю не изменять ее. В многопоточном коде мы хотели бы сказать почти наоборот. Это «другой код обещает не изменять его во время его использования» (без явного блокировки), но это не так ...

Подробнее здесь: https://stackoverflow.com/questions/721 ... andard-yet
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»