Сообщение Re[10]: Оператор приведения от 05.07.2019 13:10
Изменено 05.07.2019 13:14 Videoman
Re[10]: Оператор приведения
Здравствуйте, night beast, Вы писали:
NB>а это нормально что
NB>
NB>при OtherType == std::optional
NB>дает не то значение, что хранится в value?
Нет. Вот как-раз сейчас сижу с этим разбираюсь. У меня голова сейчас немного обалдела от этого optional. Сейчас объясню почему реакция идет с такими задержками. Дело в том, что у меня огромная библиотека и как раз там есть собственная реализация std::optional для 13-й Студии. Также, все обложено кучей моих же тестов, которые как раз сейчас валятся. Если вы уже поняли в чем ошибка и как лучше исправить — буду вам премного благодарен.
Вообще вот эта конструкция:
на практике оказывается очень жадная.
NB>а это нормально что
NB>
NB> new(&m_data) Type(std::forward<OtherType>(value));
NB>
NB>при OtherType == std::optional
NB>дает не то значение, что хранится в value?
Нет. Вот как-раз сейчас сижу с этим разбираюсь. У меня голова сейчас немного обалдела от этого optional. Сейчас объясню почему реакция идет с такими задержками. Дело в том, что у меня огромная библиотека и как раз там есть собственная реализация std::optional для 13-й Студии. Также, все обложено кучей моих же тестов, которые как раз сейчас валятся. Если вы уже поняли в чем ошибка и как лучше исправить — буду вам премного благодарен.
Вообще вот эта конструкция:
inline optional<Type>::optional(OtherType&& value, std::decay_t<compatible_t<OtherType>>*) _NOEXCEPT
на практике оказывается очень жадная.
Re[10]: Оператор приведения
Здравствуйте, night beast, Вы писали:
NB>а это нормально что
NB>
NB>при OtherType == std::optional
NB>дает не то значение, что хранится в value?
Нет. Вот, как-раз сейчас, сижу с этим разбираюсь. У меня голова сейчас немного обалдела от этого optional. Почему реакция идет с такими задержками: дело в том, что у меня огромная библиотека и, как раз, там есть собственная реализация std::optional для 13-й Студии. Также, все обложено кучей моих же тестов, которые как раз сейчас валятся. Если вы уже поняли в чем ошибка и как лучше исправить — буду вам премного благодарен.
Вообще, вот эта конструкция:
на практике оказывается очень "жадная".
NB>а это нормально что
NB>
NB> new(&m_data) Type(std::forward<OtherType>(value));
NB>
NB>при OtherType == std::optional
NB>дает не то значение, что хранится в value?
Нет. Вот, как-раз сейчас, сижу с этим разбираюсь. У меня голова сейчас немного обалдела от этого optional. Почему реакция идет с такими задержками: дело в том, что у меня огромная библиотека и, как раз, там есть собственная реализация std::optional для 13-й Студии. Также, все обложено кучей моих же тестов, которые как раз сейчас валятся. Если вы уже поняли в чем ошибка и как лучше исправить — буду вам премного благодарен.
Вообще, вот эта конструкция:
inline optional<Type>::optional(OtherType&& value, std::decay_t<compatible_t<OtherType>>*) _NOEXCEPT
на практике оказывается очень "жадная".