Size: a a a

2020 May 11

DS

Dmitry Sokolov in pro.cxx
Я б упоролся и отнаследовавшись закрыл бы конструктор от const char*, отдуплился бы в проблемных местах какой нить фигнёй типа to_string_view и по окончании рефакторинг квеста просто сказал бы using my_string=std::string.
источник

AM

Alex Master in pro.cxx
Dmitry Sokolov
Я б упоролся и отнаследовавшись закрыл бы конструктор от const char*, отдуплился бы в проблемных местах какой нить фигнёй типа to_string_view и по окончании рефакторинг квеста просто сказал бы using my_string=std::string.
хороший план
источник

EP

Egor Pugin in pro.cxx
vehlwn
А бегин, енд в каждом алгоритме писать не устал? Не понимаю претензии.
хочу кратко, вот reversed() постом выше выглядит хорошо
источник

DS

Dmitry Sokolov in pro.cxx
Alex Master
хороший план
Пардон, я слоупок слегка, эт в контексте наследования из пары комментариев назад. От std string, когда у кого то там были проблемы с конструктором от nullptr.
источник

AM

Alex Master in pro.cxx
Dmitry Sokolov
Пардон, я слоупок слегка, эт в контексте наследования из пары комментариев назад. От std string, когда у кого то там были проблемы с конструктором от nullptr.
я застал этот момент))
источник

CD

Constantine Drozdov in pro.cxx
Dmitry Sokolov
Я б упоролся и отнаследовавшись закрыл бы конструктор от const char*, отдуплился бы в проблемных местах какой нить фигнёй типа to_string_view и по окончании рефакторинг квеста просто сказал бы using my_string=std::string.
Примерно так и делаю, да (всякие дыры с отсутствием литералов для 8битных не char-ов закрывать)
источник

DS

Dmitry Sokolov in pro.cxx
Я после введения sv много боролся вообще с си строками, тупо поиском c_str. Сейчас даже думаю эксперимент замутить, отказаться от 0. Сделать c_str non const and throwing
источник

DS

Dmitry Sokolov in pro.cxx
Ох, я не гнушаюсь даже столь мерзкими хоть и легальными вещами как перегрузками string ::) string<..., inplace_allocator<42>>.
источник

AM

Alex Master in pro.cxx
ARCHANGEL
Если поток уже есть, достаточно его открыть через OpenThread по thread id
до меня только сейчас дошло. этот способ никак не стыкуется с std::thread ?
источник

A

ARCHANGEL in pro.cxx
Alex Master
до меня только сейчас дошло. этот способ никак не стыкуется с std::thread ?
std::thread имеет метод handle(), который пригодный для suspendthread
источник

IZ

Ilia Zviagin in pro.cxx
Коллега
Вот и хочу понять возможно найти самый быстрый варьянт)
/warn offtopic
источник

G

Group Butler [beta] in pro.cxx
Коллега has been warned (1/3)
источник

DS

Dmitry Sokolov in pro.cxx
Alex Master
до меня только сейчас дошло. этот способ никак не стыкуется с std::thread ?
Ну это же всё равно непортабельно, а какого рода долгоиграющие задачи надо паузить?
источник

DS

Dmitry Sokolov in pro.cxx
Alex Master
до меня только сейчас дошло. этот способ никак не стыкуется с std::thread ?
Если задачи долгоживущие, скорее всего для них всё равно нужен будет механизм для досрочного завершения чтобы останавливаться не слишком долго. Ну а в нем можно и suspend сделать.
источник

OS

Oleksandr Senkovych in pro.cxx
Alex Master
до меня только сейчас дошло. этот способ никак не стыкуется с std::thread ?
у std::thread есть native_handle. Но да, это платформозависимый код и ни о какой портабельности речь не идет
источник

AM

Alex Master in pro.cxx
Oleksandr Senkovych
у std::thread есть native_handle. Но да, это платформозависимый код и ни о какой портабельности речь не идет
std::thread::native_handle возвращал 0-1-2-3-4-5 и так далее в зависимости от количества созданных потоков. а такая же по содержанию winapi функция числа далеко за 10000. так что я так и не смог скрестить бульдога с носорогом
источник

DS

Dmitry Sokolov in pro.cxx
О, кстати, suspend/resume могли бы стать частью новых stop_source/stop_token, блокируя задачи в вызове token.stop_requsted().
источник

AM

Alex Master in pro.cxx
возможно это зависит от того, что у меня pthread модель потоков установлена вместе с mingw.
источник

ПК

Побитый Кирпич... in pro.cxx
Alex Master
возможно это зависит от того, что у меня pthread модель потоков установлена вместе с mingw.
Да, большинство проблем - это использование mingw. На винде только msvc или clang на крайний случай
источник

i

ilynxy in pro.cxx
А подскажите пожалуйста как происходит матчинг variadic аргументов, если у меня, к примеру template<typename... Args> void foo(S& s, Args... args); и я вызываю foo(s, a0, a1, a2) то понятно, а если у меня template<typename... Args0, typename... Args1> void bar(S& s0, Args0...args0, S& s1, Args1...args1); то при попытке bar(s0, a0, a1, s1, a1, a2) не находит соответствия. Почему-то в таком случае, Args0... по мнению clang это пустой список. И как такое победить?
источник