Size: a a a

2020 July 21

t

tamtakoe in supapro.cxx
std::slavik
flatbuffers посмотрел?
Еще нет. Там вроде как сериализация только
источник

VS

Vlad Serebrennikov in supapro.cxx
А Му Де
Решил тут разобраться в работах флагов оптимизации. Правильно ли я понимаю, что с -O2 добавлять inline к функциям смысла мало, т.к. с этим флагом gcc большинство коротких и простых функций и так просчитывает на этапе компиляции и инлайнить там нечего?
inline не про оптимизацию
https://en.cppreference.com/w/cpp/language/inline
источник

R

Revas in supapro.cxx
Добрый вечер, можете посоветовать кикие-нибудь задачники, где можно подтянуть stl(с пояснениями к решению)? И какие-нибудь ресурсы на то, чтобы свои знания проверить
источник

IZ

Ilia Zviagin in supapro.cxx
tamtakoe
В плюсах данные передаются по значению, но массивы, например, по ссылке. А что по поводу экземпляров классов, векторов и проч.? Есть какое-нибудь простое правило, чтобы запомнить, что по ссылке передается, а что по значению?
Всё всегда передается по значению. Только массивы при передаче в функцию делают decay
источник

IZ

Ilia Zviagin in supapro.cxx
Revas
Добрый вечер, можете посоветовать кикие-нибудь задачники, где можно подтянуть stl(с пояснениями к решению)? И какие-нибудь ресурсы на то, чтобы свои знания проверить
Напиши частотный словарь текста.
источник

VS

Vladimir Suisei in supapro.cxx
В чем суть названия god bolt?
источник

VK

Valentin Kornienko in supapro.cxx
Vladimir Suisei
В чем суть названия god bolt?
Это фамилия его создателя. Можешь посмотреть cppcon  с ним.
источник

VS

Vlad Serebrennikov in supapro.cxx
в каком-то из выступлений на cppcon он жаловался, что его фамилия стала глаголом
источник

NI

Nikita Ivanov in supapro.cxx
помогите пж с шаблонами
есть скажем callable тип F, а также ReturnType и ...Args [специализацией объединенные в ReturnType(Args...)]
нужно чтобы был true_type если F можно вызвать как ReturnType(Args...) и false_type если нельзя

template<class F, class ReturnValue, class... Args>
struct IsInvokable;

template<class F, class ReturnValue, class... Args>
struct IsInvokable<F, ReturnValue(Args...)> : public std::false_type
{};

template<class F, class ReturnValue, class... Args>
struct IsInvokable<F, ReturnValue(Args...)> : public std::true_type
{
private:
 using SfinaeType = decltype(static_cast<ReturnValue>(std::declval<F>()(std::declval<Args>()...)));
};

код выше не работает, почему не знаю

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

DP

Denis Paukaev in supapro.cxx
стас окунь
почему я обновил cmake через консоль, но в clion у меня все равно старая везсия  cmake?  как это пофиксить?
Проверь какой у него в настройках прописан cmake, он обычно свой по дефолту втыкает
источник

DP

Denis Paukaev in supapro.cxx
Nikita Ivanov
помогите пж с шаблонами
есть скажем callable тип F, а также ReturnType и ...Args [специализацией объединенные в ReturnType(Args...)]
нужно чтобы был true_type если F можно вызвать как ReturnType(Args...) и false_type если нельзя

template<class F, class ReturnValue, class... Args>
struct IsInvokable;

template<class F, class ReturnValue, class... Args>
struct IsInvokable<F, ReturnValue(Args...)> : public std::false_type
{};

template<class F, class ReturnValue, class... Args>
struct IsInvokable<F, ReturnValue(Args...)> : public std::true_type
{
private:
 using SfinaeType = decltype(static_cast<ReturnValue>(std::declval<F>()(std::declval<Args>()...)));
};

код выше не работает, почему не знаю

заранее спасибо
F можно вызвать как ReturnType(Args...) это вообще не понятно что означает
источник

DP

Denis Paukaev in supapro.cxx
чем не устраивает std::is_invocable_r ?
источник

NI

Nikita Ivanov in supapro.cxx
лол не знал что есть
источник

MN

Midow Noname in supapro.cxx
🎄🎊 R 🎅 Tb| ✡️ 🎊🎄
Ну тогда качай какой-нибудь cygwin или wsl2
а msys2 подойтет? и могу ли я следовать руководству по установке по linux
источник

🎄T

🎄🎊 R 🎅 Tb| ✡️ 🎊🎄... in supapro.cxx
Midow Noname
а msys2 подойтет? и могу ли я следовать руководству по установке по linux
Скачай wsl2 это в пару кликов делается. Накати компилятор
источник

t

tamtakoe in supapro.cxx
Как сделать, чтобы компилятор не ругался? Какое его дело, вообще, буду я инициализировать переменную или нет. Пусть в рантайме ошибку выкидывает
Group* pCurrentGroup;
...
if (shouldBeTrue) {
  groups.push_back({});
  pCurrentGroup = &groups.back();
}
(*pCurrentGroup)["lol"] = 1; //error C4703: используется потенциально неинициализированная локальная переменная-указатель "pCurrentGroup"
источник

NI

Nikita Ivanov in supapro.cxx
tamtakoe
Как сделать, чтобы компилятор не ругался? Какое его дело, вообще, буду я инициализировать переменную или нет. Пусть в рантайме ошибку выкидывает
Group* pCurrentGroup;
...
if (shouldBeTrue) {
  groups.push_back({});
  pCurrentGroup = &groups.back();
}
(*pCurrentGroup)["lol"] = 1; //error C4703: используется потенциально неинициализированная локальная переменная-указатель "pCurrentGroup"
так если shouldbetrue то зачем оно вообще
источник

NI

Nikita Ivanov in supapro.cxx
правильно делает, это логично
источник

PK

Pavel Kazakov in supapro.cxx
tamtakoe
Как сделать, чтобы компилятор не ругался? Какое его дело, вообще, буду я инициализировать переменную или нет. Пусть в рантайме ошибку выкидывает
Group* pCurrentGroup;
...
if (shouldBeTrue) {
  groups.push_back({});
  pCurrentGroup = &groups.back();
}
(*pCurrentGroup)["lol"] = 1; //error C4703: используется потенциально неинициализированная локальная переменная-указатель "pCurrentGroup"
твой shouldBeTrue стал false, что дальше будет? сегфолт
источник

t

tamtakoe in supapro.cxx
Nikita Ivanov
так если shouldbetrue то зачем оно вообще
Да пример это. Первый раз там точно будет true, а после этого переменная уже проинициализирована
источник