Size: a a a

2020 June 24

ПК

Побитый Кирпич... in pro.cxx
источник

A

Alex Ф-ф-фэils!🌠︙... in pro.cxx
Egor Pugin
а в стандарте value_type строго определён или там просто требуется иметь такой тайпдеф?
http://eel.is/c++draft/fs.class.path#7 тайпдеф на ос-специфик
источник

AN

Alexander N in pro.cxx
Но ведь
int* foo = nullptr;
delete foo; // валидно
источник

OS

Oleksandr Senkovych in pro.cxx
Alexander N
Но ведь
int* foo = nullptr;
delete foo; // валидно
представь если б они его вызывали. тогда каждый раз в deleter'e надо было бы проверять на nullpt
источник

AS

Anatoly Shirokov in pro.cxx
Alexander N
Но ведь
int* foo = nullptr;
delete foo; // валидно
валидно, удалять nullptr легально, проверки не нужны
источник

AN

Alexander N in pro.cxx
Просто как это реализовано. Там проверка вставляется?
источник

OS

Oleksandr Senkovych in pro.cxx
Alexander N
Просто как это реализовано. Там проверка вставляется?
~unique_ptr() noexcept
    {
  auto& __ptr = _M_t._M_ptr();
  if (__ptr != nullptr)
   get_deleter()(__ptr);
источник

AN

Alexander N in pro.cxx
Oleksandr Senkovych
~unique_ptr() noexcept
    {
  auto& __ptr = _M_t._M_ptr();
  if (__ptr != nullptr)
   get_deleter()(__ptr);
Речь про удаление сырого. Он походу вообще выкидывается этот код
источник

OS

Oleksandr Senkovych in pro.cxx
Alexander N
Речь про удаление сырого. Он походу вообще выкидывается этот код
https://godbolt.org/z/mTa7cS да, там стоит проверка на null
источник

AN

Alexander N in pro.cxx
Аха причём test rdi, rdi как бы говорит нам, что компилер все-равно вставляет проверку потому что следом идёт je
источник

v

vehlwn in pro.cxx
Alexander N
Но ведь
int* foo = nullptr;
delete foo; // валидно
В спецификации уник_птра написано перед вызовом удалятора проверять, вот он и проверяет.
источник

v

vehlwn in pro.cxx
Alex Ф-ф-фэils!🌠︙
Это не эффективно на всех системах, где не чары
А, я забыл что тут низкоуровневый язык.
источник

DF

Dollar Føølish in pro.cxx
Хех
источник

РД

Равиль Джамбеков... in pro.cxx
Побитый Кирпич
std::filesystem::path даст тебе первую часть удобным способом
А как им воспользоваться то ?
источник

РД

Равиль Джамбеков... in pro.cxx
Равиль Джамбеков
А как им воспользоваться то ?
Можно пример ?
источник

ПК

Побитый Кирпич... in pro.cxx
Равиль Джамбеков
А как им воспользоваться то ?
А что тебе надо?
источник

ПК

Побитый Кирпич... in pro.cxx
Равиль Джамбеков
Можно пример ?
Лучше скажи какая задача стоит
источник

ПК

Побитый Кирпич... in pro.cxx
vehlwn
А, я забыл что тут низкоуровневый язык.
Не низкоуровневый, а "zero cost abstraction". Для того что ты хочешь, я так понимаю будет конструктор от char8_t или щас уже u8path
источник

РД

Равиль Джамбеков... in pro.cxx
Побитый Кирпич
А что тебе надо?
Мне нужно открыть файл  ifstream , путь  "C:\ Users \Дата\new.txt"
источник

v

vehlwn in pro.cxx
Побитый Кирпич
Не низкоуровневый, а "zero cost abstraction". Для того что ты хочешь, я так понимаю будет конструктор от char8_t или щас уже u8path
Только char8_t появился в с++20, а венда 30 лет назад.
источник