почему shared_ptr не поддерживает? В чём проблема вообще была добавить кастомизацию в .этом месте, кажется что всё можно было +- также сделать как для unqiue_ptr, возможно добавилось бы ограничение на non throw copy конструктор и всё(для weak ptr)
А (4) - это что? https://en.cppreference.com/w/cpp/memory/shared_ptr/shared_ptr
ну вот и скажите что это, уж точно не кастомный поинтер
Что такое "кастомный поинтер"?
pointer like type
Так в чем проблема?
в том что shared ptr его не поддерживает
https://en.cppreference.com/w/cpp/memory/unique_ptr
Я думаю эт потому что для unique_ptr deleter всегда с собой таскать нужно явно (и явно перемещать), а в shared его можно в shared state засунуть и про тип забыть.
и в чём же проблема завезти template<typename T> struct pointer_of { using type = T*; // default };
Ну да, тем более это уже было: https://en.cppreference.com/w/cpp/memory/pointer_traits
ну там для аллокатора, а потенциально это различающиеся вещи
Обсуждают сегодня