Size: a a a

2021 June 30

d

d7d1cd in supapro.cxx
Слава яйцам! Именно, Карл!
источник

K

Kelbon in supapro.cxx
ну это делается парой статик ассертов с деклвалами
источник

K

Kelbon in supapro.cxx
ну а если твой вариант, то мне кажется красивее просто написать пару функций с перегрузками и вызвать их 2 раза, чтобы не плодить шаблонную магию, которая ещё и раскрываться будет на комплияции
источник

d

d7d1cd in supapro.cxx
Подскажи как.
источник

K

Kelbon in supapro.cxx
(а если уж ты не доверяешь просто проверке своего форварда 2 раза, то описывай все const const volatile & && .....)
источник

 P

 ‌‌Gleb Pilipets... in supapro.cxx
Короче, проблема была в конченном vcpkg - он линковал либы x64-windows, хотя я явно указывал x64-windows-v140, но оба билда были сделаны.
Тип линковались билды буста от MSVC v142, в то время как проект я билдил под MSVC v140 - в итоге оно работало некоректно (зависание, crash).

Я хз, как в этим vpckg нормально залинковать нужные либы, создал issue - https://github.com/microsoft/vcpkg/issues/18717
Пока что как work around указал пути руками.
источник

d

d7d1cd in supapro.cxx
Пара функций, это когда одна принимает левую ссылку, вторая правую ссылку?
источник

K

Kelbon in supapro.cxx
ну как бы да, хотя я предпочитаю эти ссылки так не называть()
источник

K

Kelbon in supapro.cxx
а где собственно твоя реализация форварда, там std::forward используется, лучше не суй в этот неймспейс
источник

K

Kelbon in supapro.cxx
сделай свой
источник

d

d7d1cd in supapro.cxx
Ничего не понял. Во первых  у меня в std нет forward, во вторых я свой форвард засунул в свой немспейс (не std).
источник

K

Kelbon in supapro.cxx
покажи код самого форварда
источник

K

Kelbon in supapro.cxx
хз как у кого, но меня смущает идея проверить тестами то, что известно на компайл тайме
источник

 P

 ‌‌Gleb Pilipets... in supapro.cxx
Спасибо, действительно помогло.
источник

d

d7d1cd in supapro.cxx
источник

ПК

Побитый Кирпич... in supapro.cxx
А в чём вопрос?
источник

d

d7d1cd in supapro.cxx
Вопрос как можно написать юнит тест для проверки моего форварда
источник

ПК

Побитый Кирпич... in supapro.cxx
Можно через static_assert проверить тип возврата

Можно сделать тестовый класс с счётчиками в копи и мув конструкторах, повызывать код, используя разные типы ссылок, посчитать что конструкторы вызвались столько раз, сколько нужно
источник

K

Kelbon in supapro.cxx
constexpr noexcept не поддерживает компилятор? И ещё одного ассерта не хватает( что в стандарте есть)
источник

AK

Alexey Komiagin in supapro.cxx
Полиморфизм это когда независимо от типа данных, функции и различные операции выполняются одинаково
А перегрузка это когда для нового типа написано новое правило для его работы?
источник