Size: a a a

2020 March 17

АР

Андрей Руссков in pro.cxx
какой-нибудь range-based for может быть быстрее чем поиндексная итерация по std::vector'у
источник

АР

Андрей Руссков in pro.cxx
но не факт что во всех реализациях
источник

АР

Андрей Руссков in pro.cxx
а может просто сравнивали gcc 6 какой-нить с msvc 2019
источник

O

Ofee in pro.cxx
Vyacheslav Olkhovchenkov
чего? в c++ забанили libc? или тебе надо обязательно объектно-темплейтную обертку над тривиальной функцией?
Я практически никогда не работал с правами, потому я не вполне понимаю, какая функция или их комбинация из libc мне нужна, чтобы решить мою задачу — получить список прав на файл для текущего пользователя, а не абстрактных владельца или группы, не откажусь, если получу ответ в супе

Но наличие такого функционала в libc, тем не менее, не должно препятствовать добавлению этого функционала в стандартную библиотеку C++, так что мой вопрос, нет ли пропозала (или есть ли препятствия для этого функционала), всё ещё актуален
источник

VO

Vyacheslav Olkhovchenkov in pro.cxx
Ofee
Я практически никогда не работал с правами, потому я не вполне понимаю, какая функция или их комбинация из libc мне нужна, чтобы решить мою задачу — получить список прав на файл для текущего пользователя, а не абстрактных владельца или группы, не откажусь, если получу ответ в супе

Но наличие такого функционала в libc, тем не менее, не должно препятствовать добавлению этого функционала в стандартную библиотеку C++, так что мой вопрос, нет ли пропозала (или есть ли препятствия для этого функционала), всё ещё актуален
man 2 access
источник

ПК

Побитый Кирпич in pro.cxx
Constantine Drozdov
Мсвц действительно медленный код даёт, это не повод ее хоронить. Я полагаю, что у них все ещё не дошли руки до именно кодогенерации, они скорее всего поддержку фичек приоритетят
Кодген они тоже улучшают. По крайней мере всякие avx и прочие simd они прокачали
источник

O

Ofee in pro.cxx
Я же упомянул, я хочу кроссплатформенное решение в рамках std::filesystem. Т.е., если на платформе у нас уже есть filesystem, у платформы есть способ получить подобную информацию. В противном случае вендор бы просто не реализовал filesystem.

Так почему бы не дать интерфейс к необходимой функциональности в  std::filesystem?
источник

IA

Ivan Azoyan in pro.cxx
ptrNine
ну это как libstdc++, только libc++
И почему с ней медленнее?
источник

VO

Vyacheslav Olkhovchenkov in pro.cxx
Ofee
Я же упомянул, я хочу кроссплатформенное решение в рамках std::filesystem. Т.е., если на платформе у нас уже есть filesystem, у платформы есть способ получить подобную информацию. В противном случае вендор бы просто не реализовал filesystem.

Так почему бы не дать интерфейс к необходимой функциональности в  std::filesystem?
Пыль глотать заебешься. Есть винда, у нее все свое. Есть уних-лике. Там ugo а поверх может быть acl. А acl может быть посикс а может быть nfsv4. А про macos и андроиды я ваще не в курсе
источник

V

Vyacheslav in pro.cxx
Constantine Drozdov
Мсвц действительно медленный код даёт, это не повод ее хоронить. Я полагаю, что у них все ещё не дошли руки до именно кодогенерации, они скорее всего поддержку фичек приоритетят
Там оптимизаций по strict aliasing по умолчанию нет
источник

V

Vyacheslav in pro.cxx
Ещё stdcall может тормозить по сравнению с cdecl, но это тонкости
источник

O

Ofee in pro.cxx
Vyacheslav Olkhovchenkov
Пыль глотать заебешься. Есть винда, у нее все свое. Есть уних-лике. Там ugo а поверх может быть acl. А acl может быть посикс а может быть nfsv4. А про macos и андроиды я ваще не в курсе
Если мы можем получить права для группы и владельца, что мешает вендору компилятора определить права для конкретного, текущего пользователя на своей платформе? Т.е. у нас уже в любом случае есть реализованный кусок POSIX
источник

VO

Vyacheslav Olkhovchenkov in pro.cxx
если так -- то просто сделай access()
источник

S

Sasha in pro.cxx
Vyacheslav
Ещё stdcall может тормозить по сравнению с cdecl, но это тонкости
В каких случаях?
источник

V

Vyacheslav in pro.cxx
Sasha
В каких случаях?
Когда аргументы уже в нужных регистрах
источник

S

Sasha in pro.cxx
Vyacheslav
Когда аргументы уже в нужных регистрах
Я думал только fastcall использует регистры
источник

V

Vyacheslav in pro.cxx
Sasha
Я думал только fastcall использует регистры
О_о
источник

S

Sasha in pro.cxx
C (__cdecl)
The same constraints apply to the 32-bit world as in the 16-bit world. The parameters are pushed from right to left...

stdcall
... Parameters are pushed from right to left...

fastcall
The first two parameters are passed in ECX and EDX, with the remainder passed on the stack as in __stdcall.

https://devblogs.microsoft.com/oldnewthing/20040108-00/?p=41163
источник

V

Vyacheslav in pro.cxx
Sasha
C (__cdecl)
The same constraints apply to the 32-bit world as in the 16-bit world. The parameters are pushed from right to left...

stdcall
... Parameters are pushed from right to left...

fastcall
The first two parameters are passed in ECX and EDX, with the remainder passed on the stack as in __stdcall.

https://devblogs.microsoft.com/oldnewthing/20040108-00/?p=41163
Ok, да, я ошибся.
источник

SE

Stanislav Ershov in pro.cxx
источник