Ioann_
Я тоже на это хер клал, а интересно
Ioann_
вопрос
Ioann_
Кто из активных чата и как часто использует
Nik
А почему не сделать просто как в джаве?
Nik
Какие подводные камни?
Ioann_
& && вописании функций члена класса
Ioann_
Ну то есть, когда мы объявляем функцию как для rval и для l val поведение ?
🐙 Antony
»Была удалена спецификация исключений. Больше нельзя указать какие именно исключения выбрасывает функция. В C++17 стоит лишь помечать функции, которые не выбрасывают исключений как noexcept. Кто-то может в двух словах описать почему так?
Там проблема в следующем: любая С функция теоретически может кинуть исключение, любая функция без спецификаций исключений тоже может кинуть исключение, спецификация исключений зачастую не прописывается в результирующих бинарных файлах. Получается что компиляторы не могу делать оптимизации, основвываясь на спецификации исключений. Более того, они вынуждены проверять спецификацию исключений, оборачивая код в try { код } catch(specified-exception) { throw; } catch (...) { std::unexpected(); }. Это только добавляет кода в результирующем бинарнике Итого - хотели сделать лучше, а получилось плохо. Поэтому выпилили
Anton
Всем привет от минского C++ соообщества CoreHard! Завтра (14 октября) в Минске проходит 7-я конфа по плюсам - C++ CoreHard Autumn 2017. Приглашаем присоединиться к бесплатной youtube-трансляции (на канале сообщества https://www.youtube.com/channel/UCifgOu6ARWbZ_dV29gss8xw) Сайт конференции и расписание: http://conference.corehard.by/ Начало - в 11:00 по Минску. Присоединяйтесь к трансляции!
Ioann_
Которого?
Про отсутствие allocate_unque
🐙 Antony
Подтверждаю, отсутствует
🐙 Antony
Потому что не написали предложение на эту тему. И потому что надо решать вместе с добавлением statefull allocator к make_shared
Ioann_
Теперь ясно. Я думал, мало ли там косяки какие могут быть, т.к сам я использую данное 'чудо'
Nik
А с++17 уже совсем-совсем готов к использованию? Вендоры все заимплементили?
🐙 Antony
Некоторые вендоры ещё C99 не заимплементили
Nik
в clang например написано что все уже есть в clang 5
Anonymous
https://www.developerinsider.in/compile-cpp-program-with-gplusplus-compiler-on-bash-on-ubuntu-on-windows-10/
🦥Alex Fails
Вот жалко checked не впилили
🦥Alex Fails
В жабе удобно было в этом
Dr. Friedrich
В жабе отвратно было.
Dr. Friedrich
Представь такую ситуацию: ты вызываешь какой-нибудь std::transform и передаёшь туда лямбду. Исключения у тебя checked, и поэтому ты из этой лямбды ничего не можешь выкинуть :( (если в стандартной либе, конечно, нет разных перегрузок у трансформа)
Aidar
Чекед не нужны
Aidar
Там где вы хотите чекед просто надо возвращать статус
Dr. Friedrich
В жабе к тому ж тупо сделали, что бросаемые исключения нельзя делать параметрами генерика, и нельзя по ним делать перегрузку. Если в плюсцах эти проблемы устранить и сделать обратно-совместимое со старым кодом решение — то может получиться что-нибудь интересное.
🦥Alex Fails
template <typename Exc> void transform throws(Exc) {}
🦥Alex Fails
Ага, забавный хак
Vladislav
/cppref
FailsBot
http://en.cppreference.com/w/cpp/types/is_base_of
Anonymous
/cppref говнокод
FailsBot
Search results for "говнокод" 1. History of C++ 2. std::atomic::operator T 3. std::atomic_int::operator T 4. std::cauchy_distribution::a 5. std::cauchy_distribution::b 6. std::atomic_bool::operator T 7. std::atomic_long::operator T 8. std::atomic_uint::operator T 9. std::weibull_distribution::a 10. std::weibull_distribution::b 11. std::atomic_llong::operator T 12. std::atomic_schar::operator T 13. std::atomic_short::operator T 14. std::atomic_uchar::operator T 15. std::atomic_ulong::operator T 16. std::binomial_distribution::p 17. std::binomial_distribution::t 18. std::fisher_f_distribution::m 19. std::fisher_f_distribution::n 20. std::atomic_int8_t::operator T 21. std::atomic_size_t::operator T 22. std::atomic_ullong::operator T 23. std::atomic_ushort::operator T
FailsBot
Search results for "говнокод" (Page 2) 24. std::bernoulli_distribution::p 25. std::geometric_distribution::p 26. std::lognormal_distribution::m 27. std::lognormal_distribution::s 28. std::student_t_distribution::n 29. std::atomic_int16_t::operator T 30. std::atomic_int32_t::operator T 31. std::atomic_int64_t::operator T 32. std::atomic_uint8_t::operator T 33. std::atomic_wchar_t::operator T 34. std::atomic_char16_t::operator T 35. std::atomic_char32_t::operator T 36. std::atomic_intmax_t::operator T 37. std::atomic_intptr_t::operator T 38. std::atomic_uint16_t::operator T 39. std::atomic_uint32_t::operator T 40. std::atomic_uint64_t::operator T 41. std::chi_squared_distribution::n 42. std::uniform_int_distribution::a 43. std::uniform_int_distribution::b 44. std::atomic_ptrdiff_t::operator T 45. std::atomic_uintmax_t::operator T
FailsBot
Search results for "говнокод" (Page 3) 46. std::atomic_uintptr_t::operator T 47. std::uniform_real_distribution::a 48. std::uniform_real_distribution::b 49. std::extreme_value_distribution::a 50. std::extreme_value_distribution::b 51. std::atomic_int_fast8_t::operator T 52. std::auto_ptr::operator auto_ptr<Y> 53. std::reference_wrapper::operator T& 54. std::atomic_int_fast16_t::operator T 55. std::atomic_int_fast32_t::operator T 56. std::atomic_int_fast64_t::operator T 57. std::atomic_int_least8_t::operator T 58. std::atomic_uint_fast8_t::operator T 59. std::atomic_int_least16_t::operator T 60. std::atomic_int_least32_t::operator T 61. std::atomic_int_least64_t::operator T 62. std::atomic_uint_fast16_t::operator T 63. std::atomic_uint_fast32_t::operator T 64. std::atomic_uint_fast64_t::operator T 65. std::atomic_uint_least8_t::operator T 66. std::atomic_uint_least16_t::operator T
Vladislav
/cppref
FailsBot
http://en.cppreference.com/w/cpp/experimental/ranges/iterator/IndirectlyComparable
Danil
lol
🦥Alex Fails
Нувычо, баян же)
🦥Alex Fails
Это качество их вики-поиска
🦥Alex Fails
Он там кривоэ очень
🦥Alex Fails
http://en.cppreference.com/mwiki/index.php?title=Special%3ASearch&search=Говнокод&button= во оцените. Это без апи
🦥Alex Fails
Их апи работает так же. Они его сломали(
🦥Alex Fails
Да
🦥Alex Fails
Я тоже об этом думал
🦥Alex Fails
if (search[0] & 0x80) sendMessage("goto nahuj;");
🦥Alex Fails
Во
Matwey
так есть русская версяи cppreference
Matwey
ну, переведенная гугл-транслейтом
🦥Alex Fails
Я исчю по инглише
🦥Alex Fails
Надо написать РßP^P;
Berkus
о.к.
🦥Alex Fails
О. Номер 3
Anonymous
ага
Anonymous
3 ак
Anonymous
хлчу своой @david363 назад
Anonymous
мне интересно, а зачем conan на практике нужен
Anonymous
что-то не могу надумать, в каком кейсе он удобен
Anonymous
мб какой-нибудь убедительный видос с конфы есть?
Anonymous
что большое — ищу в системе, что небольшое — субмодуль
Anonymous
есть какие-то очевидные пробелмы в этом подходе?
Berkus
мне интересно, а зачем conan на практике нужен
чтобы сказать что-то типа https://github.com/berkus/carma/blob/master/Cargo.toml а оно само подтянуло всё нужное?
Berkus
есть какие-то очевидные пробелмы в этом подходе?
да, субмодуль - это значит не бинарники? а если бинарники то для каких систем?
Anonymous
там может не оказаться?
Berkus
там может не оказаться?
ну предположим ты на винде, ищешь libclang, может его там не оказаться?
Anonymous
cmake + pkg-config решает 98% задач.
Berkus
cmake + pkg-config решает 98% задач.
pkg-config на винде такое себе
Anonymous
pkg-config на винде такое себе
Ну винда - это такое себе, да.
Anonymous
ну я как-то не тыкался в сборку софта под виндой, судя по тому, что я слышу здесь — там всё плохо
Berkus
cmake + pkg-config решает 98% задач.
cmake не умеет подтягивать бинарные зависимости под любую платформу если ты эксплицитно в своем CMakeLists.txt его этому не научил
Berkus
сделать эту часть генерик и вынести в отдельную прогу звучит разумно
Berkus
для cmake есть hunter который должен это делать но он пока что ой
Anonymous
хорошо, conan имеет место быть под виндой, где с зависимостями туго