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

1 ответ

То есть аргумент принимается по ссылке на const, а не по значению. Как есть, вы пытаетесь скопировать кортеж non-constexpr в константном выражении - это не может работать. По ссылке это хорошо, так как вы на самом деле не читаете кортеж.

я естьstatic_loop построить как это template <std::size_t n, typename F> void static_loop(F&& f) { static_assert(n <= 8 && "static loop size should <= 8"); if constexpr (n >= 8) f(std::integral_constant<size_t, n - 8>()); if constexpr (n >= ...

1 ответ

, Это было бы хорошим дополнением к Hana, чтобы сделать их заказчиками, потенциальная ловушка в том, что порядок может в конечном итоге зависеть от платформы / компилятора.

отрим следующую программу: #include <tuple> #include <vector> #include <iostream> #include <type_traits> template <class T> struct ordered {}; template <class... T> struct ordered<std::tuple<T...>> { using type = /* a reordered tuple */; }; ...

0 ответов

 типы являются дополнительными.

у сопоставить число типу. Для этого примера я сделаю функцию, которая отображает результат sizeof () на подписанный тип примитива. Мне интересно, есть ли лучший способ сделать то, что я сделал ниже в современном C ++, - это взять шаблонное ...

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

0 ответов

en.wikipedia.org/wiki/Yacc

ern C ++ есть ли способ сделать безопасную навигацию? Например,вместо делать ... if (p && p->q && p->q->r) p->q->r->DoSomething();... имеющий краткий синтаксис с использованием некоторого вида короткого замыкания интеллектуального ...

1 ответ

@underscore_d: спасибо, надеюсь, они скоро вернутся. Добавлена ссылка на кеш Google

1 ответ

@ Rakete1111 - вы (и g ++) правы; Я вообще не знал об этом улучшении C ++ 17; Благодарю.

clang, похоже, не согласны с тем, должен ли этот код компилироваться или нет: #include <type_traits> template <typename Signature, int N = 0> struct MyDelegate { }; template <typename D> struct signature_traits; template <template <typename> ...

1 ответ

 если у вас нет или вы хотите использовать

о я просто использовал бы ввод-вывод в стиле C, но я пробую современный подход к C ++, включая использование специфических возможностей C ++ 17std::byte а такжеstd::filesystem. Чтение всего файла в память, традиционный метод: #include <stdio.h> ...

1 ответ

Почему const && перегрузка as_const удалена?

Наблог о прогрессе C ++ 17 Я прочитал следующее:

2 ответа

Как выполнить арифметику кортежей в C ++ (c ++ 11 / c ++ 17)?

Я пытаюсь написать шаблонные функции / операторы, такие как+ для выполнения арифметических операций между двумя кортежами одного типа. Например, для std::tuple<int,double> t = std::make_tuple(1,2); Я бы хотел сделать auto t1 = t + t; Логика ...

1 ответ

Однако, насколько мне известно, в настоящее время нет способа обойти это без изменений кода, если не считать обновления до следующего выпуска Clang, когда бы он ни вышел.

аргумента шаблона в Clang 6 для временных объектов не работает. g ++ 8.1.0 компилирует и запускает пример правильно. Clang 6.0.0 и 6.0.2 обе ошибки в указанной строке с этим сообщением: error: expected unqualified-id Print{1,"foo"s,2}; ...