Результаты поиска по запросу "c++14"

1 ответ

Или вы можете посылать теги предпочтительнее:

о известно, что «прямая» переадресация ссылок работает легко: template<typename T> void f(T &&t); // Here we are.Теперь, как использовать пересылку ссылок косвенным путем: template<typename T> void f(some_class_template<T> &&f); // Here it is ...

1 ответ

, это заставило бы это быть инициализированным значением?

я возникают проблемы с пониманием, когда и почему именно член в моем классе инициализируется нулями в соответствии ...

1 ответ

over.match.ctor говорит: «Для прямой инициализации или инициализации по умолчанию, которая не находится в контексте инициализации копирования, все функции-кандидаты являются конструкторами класса инициализируемого объекта. Для инициализации копирования функции-кандидаты все конвертирующие конструкторы этого класса. Список аргументов - это список выражений или выражение присваивания инициализатора. " Это означает, что мы рассматриваем только конвертирующие конструкторы.

код прекрасно компилируется с GCC 5.X, MSVC, но GCC 6.X выдает ошибку: "преобразование в 'a' из списка инициализаторов будет использовать явный конструктор 'a :: a ()'"лязг"выбранный конструктор явно в ...

ТОП публикаций

2 ответа

Это определенно проясняет ситуацию. Я бы, наверное, никогда не подошел бы к этому самому анализу стандарта. Я думаю, что понял, спасибо!

отрим простой пример: template <class T> struct tag { }; int main() { auto foo = [](auto x) -> decltype(bar(x)) { return {}; }; tag<int> bar(tag<int>); bar(tag<int>{}); // <- compiles OK foo(tag<int>{}); // 'bar' was not declared in this scope ...

1 ответ

Хорошо, я вернусь к asio docs, попробую еще раз понять их. Видимо, мне все еще не хватает чего-то фундаментального, но я не знаю, что это такое. Тем не менее, я ценю ваше время.

опросКак избежать гонки данных при использовании двух потоков для отправки и получения черезasio::ip::tcp::iostream? дизайнЯ пишу программу, которая используетasio::ip::tcp::iostream для ввода и вывода. Программа принимает команды от ...

3 ответа

 на некоторых компиляторах) не рассматривает указатели как тривиальные типы. Компиляторы не относятся к требованиям стандарта серьезно, равно как и люди, которые пишут стандарты, мечтают о другом языке и изобретают всевозможные изобретения, которые прямо противоречат основным принципам. Очевидно, что пользователи смущены и иногда плохо обращаются, когда жалуются на ошибки компилятора.

ношенииэтот вопрос и ответ [https://stackoverflow.com/questions/48058545/are-there-any-guarantees-for-unions-that-contain-a-wrapped-type-and-the-type-its/48060029#48060029] .) До стандарта C ++ 17 следующее предложение было включено ...

2 ответа

Если я что-то упустил, gcc и clang здесь верны.

ющий код принят GCC 7.2 и clang 5.0.0, но отклонен Microsoft VS 2017 15.5.0 Preview 5 и компилятором 19 Intel C ++: struct S { }; constexpr int f(S) { return 0; } int main() { auto lambda = [](auto x) { constexpr int e = f(x); }; lambda(S{}); ...

1 ответ

 используется в ассоциативных контейнерах и т. д., однако, требуется умение сравнивать произвольные указатели, даже если это дороже.

роса: Правильно ли сформирован следующий код с определенным поведением? Есть ли возможная реализация C ++, в которой он может утверждать? Код (c ++ 11 и выше): #include <cassert> #include <utility> #include <ciso646> template<class T> ...

3 ответа

Извините, нет, это не ясно из текста. Вы сделали несколько интересных утверждений, но еще не подкрепили их какими-либо доказательствами.

оложим, у меня есть три скомпилированных объекта, все произведенныетот же компилятор / версия: A был скомпилирован со стандартом C ++ 11B был скомпилирован со стандартом C ++ 14C был скомпилирован со стандартом C ++ 17Для простоты предположим, ...

3 ответа

 Конструкторы.

ализация объектов (экземпляров классов или структур) в C ++ может выполняться различными способами. Некоторые синтаксисы вызываютпрямая инициализациявашего объекта, другие синтаксисы приводят ккопия инициализация, С участиемкопирования элизия ...