Size: a a a

cxx.Дискуссионная

2020 February 25

TS

Till Schneider in cxx.Дискуссионная
Говоришь тайпдеф,  а там юзинг,  ну ладно

Все равно не понял, как контролировать, что память не выделилась?
источник

АВ

Александр Вольнов in cxx.Дискуссионная
Переслано от Александр Вольнов
Причины:
1)  убрать синтаксический мусор, от которого нельзя избавиться из-за обратной совместимости
2) простота использования, расширения и комбинируемость всего - больше, чем это позволяют итераторы и даже диапазоны в C++20. В конечном итоге хочу добиться того, чтобы программу можно было собираться как конструктор из обобщённых алгоритмов
3) И самая странная причина: мне больше нравится CamelCase, надеюсь не только мне одному
4) Причин на самом деле больше, написал первое, что пришло в голову, уже устал писать, буду отвечать на другие сообщения.
источник

Т8

Т-34 85 in cxx.Дискуссионная
Александр Вольнов
Переслано от Александр Вольнов
Причины:
1)  убрать синтаксический мусор, от которого нельзя избавиться из-за обратной совместимости
2) простота использования, расширения и комбинируемость всего - больше, чем это позволяют итераторы и даже диапазоны в C++20. В конечном итоге хочу добиться того, чтобы программу можно было собираться как конструктор из обобщённых алгоритмов
3) И самая странная причина: мне больше нравится CamelCase, надеюсь не только мне одному
4) Причин на самом деле больше, написал первое, что пришло в голову, уже устал писать, буду отвечать на другие сообщения.
а Qt видел?
источник

АВ

Александр Вольнов in cxx.Дискуссионная
Till Schneider
Говоришь тайпдеф,  а там юзинг,  ну ладно

Все равно не понял, как контролировать, что память не выделилась?
Сути это не меняет. Контролировать пока не добавлю аллокаторы в Array не получится. Когда добавлю, можно будет сделать аллокатор, кидающий эксепшен.
источник

TS

Till Schneider in cxx.Дискуссионная
Александр Вольнов
Сути это не меняет. Контролировать пока не добавлю аллокаторы в Array не получится. Когда добавлю, можно будет сделать аллокатор, кидающий эксепшен.
То есть надо писать свои аллокаторы?
источник

АВ

Александр Вольнов in cxx.Дискуссионная
Т-34 85
а Qt видел?
Видел конечно. Не помню подробностей, но у меня сложилось впечатления, что там контейнеры ещё хуже, чем STL.
источник

АВ

Александр Вольнов in cxx.Дискуссионная
Till Schneider
То есть надо писать свои аллокаторы?
Написать свой typedef/using или захардкодить в (будущем) втором аргументе Array.
источник

АВ

Александр Вольнов in cxx.Дискуссионная
Array<int, ACallOnFail<SystemHeapAllocator, ThrowNoMemoryException>>
будет кидать вызывать функцию ThrowNoMemoryException, которую тебе надо написать самому. Но я думаю, ты справишься с тем, чтобы просто кинуть эксепшен, какой хочешь)
источник

TS

Till Schneider in cxx.Дискуссионная
Александр Вольнов
Написать свой typedef/using или захардкодить в (будущем) втором аргументе Array.
Ага, уяснил, пишем тайпдеф - значит пишем аллокатор
источник

АВ

Александр Вольнов in cxx.Дискуссионная
А вообще я противник эксепшенов и никогда их не юзаю кроме своего фреймворка для отлова сломанных юнит-тестов. Но при этом стараюсь по дизайну обеспечивать exception-safety, хоть её и не тестирую.
источник

BB

Bohdan Bessonov in cxx.Дискуссионная
Учитывая что эта либа не замена стл стд, свои правила, несоответствие стандарту, сравнивать ее с стл глупо

Чем она лучше eastl, буста и Qt- хотелось бы увидеть тесты

Заранее спасибо
источник

АВ

Александр Вольнов in cxx.Дискуссионная
Till Schneider
Ага, уяснил, пишем тайпдеф - значит пишем аллокатор
А пишем using, значит не пишем аллокатор?
источник

TS

Till Schneider in cxx.Дискуссионная
Александр Вольнов
А пишем using, значит не пишем аллокатор?
Не знаю, я запутался уже
источник

TS

Till Schneider in cxx.Дискуссионная
Александр Вольнов
А вообще я противник эксепшенов и никогда их не юзаю кроме своего фреймворка для отлова сломанных юнит-тестов. Но при этом стараюсь по дизайну обеспечивать exception-safety, хоть её и не тестирую.
Хорошо, когда есть код возврата, как мне его получить?
источник

Т8

Т-34 85 in cxx.Дискуссионная
Till Schneider
Хорошо, когда есть код возврата, как мне его получить?
в Rust есть Result...
источник

TS

Till Schneider in cxx.Дискуссионная
Т-34 85
в Rust есть Result...
Угу..это удобно
источник

BB

Bohdan Bessonov in cxx.Дискуссионная
Т-34 85
в Rust есть Result...
Варн за раст
источник

Т8

Т-34 85 in cxx.Дискуссионная
Bohdan Bessonov
Варн за раст
с хуя ли?
источник

BB

Bohdan Bessonov in cxx.Дискуссионная
Т-34 85
с хуя ли?
Не знаю
Тут за все варны любят сыпать
Вай нот?
источник

TS

Till Schneider in cxx.Дискуссионная
Т-34 85
в Rust есть Result...
У меня скоро в моем плюсовом коде тоже будет
источник