Size: a a a

2020 July 23

🎄T

🎄🎊 R 🎅 Tb| ✡️ 🎊🎄... in supapro.cxx
Дмитрий
Есть небольшая задача -  напилить TLV encoder для простых типов, но string нужно уметь тоже принимать, шаблонный конструктор принимает все интегральные типы и дальше с ними работает, а со строкой немного другая логика, поэтому хотел так разделить
В чем смысл писать конструктор, принимающий форвард ссылку, и еще какие-нибудь
источник

🎄T

🎄🎊 R 🎅 Tb| ✡️ 🎊🎄... in supapro.cxx
Дмитрий
Я могу конечно перегрузить для const char * и std::string
Зачем тебе
template<typename T>
obj(T &&  value)
{
}
источник

🎄T

🎄🎊 R 🎅 Tb| ✡️ 🎊🎄... in supapro.cxx
Max
Что-то я туплю, а если я из функции, возвращающей string делаю std::move, мне эту функцию во время присвоения тоже в std::move обернуть надо?
return std::move(…);
не надо делать
источник

M

Max in supapro.cxx
Вот я тоже так думаю
источник

🎄T

🎄🎊 R 🎅 Tb| ✡️ 🎊🎄... in supapro.cxx
Max
Вот я тоже так думаю
Компилятор это за тебя сделает
источник

Д

Дмитрий in supapro.cxx
🎄🎊 R 🎅 Tb| ✡️ 🎊🎄
Зачем тебе
template<typename T>
obj(T &&  value)
{
}
Ну это для примера, разве без rvalue ситуация измениться?
источник

🎄T

🎄🎊 R 🎅 Tb| ✡️ 🎊🎄... in supapro.cxx
Дмитрий
Ну это для примера, разве без rvalue ситуация измениться?
T && это не rvalue
источник

Д

Дмитрий in supapro.cxx
Я знаю, что это
источник

M

Max in supapro.cxx
🎄🎊 R 🎅 Tb| ✡️ 🎊🎄
Компилятор это за тебя сделает
мерси.
то есть по факту в той функции будет инициализирована стринга, которой я присваиваю?
источник

Д

Дмитрий in supapro.cxx
template конструктор работает с int double float bool одинаково, поэтому он шаблонный, вот
источник

🎄T

🎄🎊 R 🎅 Tb| ✡️ 🎊🎄... in supapro.cxx
Дмитрий
template конструктор работает с int double float bool одинаково, поэтому он шаблонный, вот
У тебя этот конструктор принимает не только int double float bool, а все
источник

🎄T

🎄🎊 R 🎅 Tb| ✡️ 🎊🎄... in supapro.cxx
Дмитрий
template конструктор работает с int double float bool одинаково, поэтому он шаблонный, вот
Если хочешь напиши сфинае
источник

JJ

John Johnson in supapro.cxx
Как собрать приложение в Visual Studio чтобы все необходимые библиотеки (C++ Runtime Library) были в бандле?
источник

🎄T

🎄🎊 R 🎅 Tb| ✡️ 🎊🎄... in supapro.cxx
Дмитрий
template конструктор работает с int double float bool одинаково, поэтому он шаблонный, вот
template<typename T, typename = std::enable_if_t<std::is_integral_v<std::decay_t<T>>>>
obj(T &&  value)
{
}
источник

Д

Дмитрий in supapro.cxx
John Johnson
Как собрать приложение в Visual Studio чтобы все необходимые библиотеки (C++ Runtime Library) были в бандле?
Проект -> Свойства -> Свойства конфигурации -> С/С++ -> Создание кода -> Библиотека времени выполнения. Для Debug-конфигурации выбрать Многопоточная отладка (/MTd), для Releade - Многопоточная (/MT).
источник

🎄T

🎄🎊 R 🎅 Tb| ✡️ 🎊🎄... in supapro.cxx
Дмитрий
template конструктор работает с int double float bool одинаково, поэтому он шаблонный, вот
источник

Д

Дмитрий in supapro.cxx
🎄🎊 R 🎅 Tb| ✡️ 🎊🎄
template<typename T, typename = std::enable_if_t<std::is_integral_v<std::decay_t<T>>>>
obj(T &&  value)
{
}
Похожий код был, но я его не в конструктор поместил, а в след функцию  которая там вызывается, затупил... спасибо )
источник

JJ

John Johnson in supapro.cxx
Дмитрий
Проект -> Свойства -> Свойства конфигурации -> С/С++ -> Создание кода -> Библиотека времени выполнения. Для Debug-конфигурации выбрать Многопоточная отладка (/MTd), для Releade - Многопоточная (/MT).
спасибо ищу)
источник

JJ

John Johnson in supapro.cxx
капец они эту опцию запрятали
источник

D

Danya in supapro.cxx
Max
Что-то я туплю, а если я из функции, возвращающей string делаю std::move, мне эту функцию во время присвоения тоже в std::move обернуть надо?
Не надо делать return std::move
источник