Size: a a a

2021 July 15

RM

Roy Mustang in supapro.cxx
Я думал изначально его юзать, но он внутри использует integral_constant
источник

D

Dmitriy in supapro.cxx
И?
источник

RM

Roy Mustang in supapro.cxx
а как же агрегатная инициализация?
источник

D

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

D

Dmitriy in supapro.cxx
Да и __is_constructible уже вроде как везде реализуется силами компилятора, которого мало интересует агрегатная инициализация...
источник

D

Danya in supapro.cxx
И что не так?
источник

RM

Roy Mustang in supapro.cxx
is_nothrow_constructible не относится к агрегатной инициализации, разве нет?
источник

D

Danya in supapro.cxx
Нет, это относится к тайп трейтам :)
источник

IZ

Ilia Zviagin in supapro.cxx
Я имел в виду что переместить можно только весь вектор. Целиком
источник

RM

Roy Mustang in supapro.cxx
Хотя вроде в cppref говорится, что нетривиальные конструкторы не являются noexcept ?
источник

RM

Roy Mustang in supapro.cxx
или я не так понял?
источник

G

Gabriel in supapro.cxx
Парни, можете помочб?  Есть файл SerHandler.hpp, в котором есть класс SerHandler.
В этом классе есть вызов функции:

 state = processOutcomingMessageBody<ClientPayload, RegistrationInfo>(bodyBuffer,message.mBody);

Тип ClientPayload я достаю посредством инклюда файла,
#include <Utility.Static/ClientPayload.hpp>
в котором есть неймспейс Utility, в котором лежит ClientPayload

Функция выглядит вот так:
template <typename T, typename U>
   SerializedState processIncomingMessageBody(yas::shared_buffer& bodyBuffer,
                                              Message& message)
   {
       try
       {
           auto registrationRequest = std::make_pair<T,U>(T t, U u);
           
           SerializedState state = YasSerializer::template deserialize<T, U>(bodyBuffer, messageInfo);

           if (state == SerializedState::SUCCESS)
           {
               message.mBody = std::make_any<T>(messageInfo);
           }

           return state;
       }
       catch (const std::bad_any_cast& e)
       {
           std::cout << e.what() << '\n';
           std::cout << "Message body cann't be deserialized\n";
           
           return SerializedState::FAILURE;
       }
   }



Но при компиляции выдаёт ошибки:

error C2275: T: недопустимое использование этого типа в качестве выражения
error C2146: синтаксическая ошибка: отсутствие ")" перед идентификатором "t"
источник

RM

Roy Mustang in supapro.cxx
То есть, дефолтный конструктор является НЕ noexcept
источник

D

Danya in supapro.cxx
Где ты такое нашел?)
источник

D

Dmitriy in supapro.cxx
Хм, а вопрос интереснее, чем кажется
источник

D

Danya in supapro.cxx
Мне очень интересно как ты связал это
https://t.me/supapro/925580
И это
https://t.me/supapro/925583
источник

RM

Roy Mustang in supapro.cxx
Короче, мне че делать?
источник

͏С

͏ СаС in supapro.cxx
аа
то есть, чтоб сделать то, что мне надо - это нужные элементы отправлять в новый вектор, а ненужные во временный и потом мувить временный на место старого?
upd: так и сделал, работает
источник

D

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

ip

illya palkin in supapro.cxx
auto registrationRequest = std::make_pair<T,U>(T t, U u);
Вот ошибка
источник