Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения

Boost.Hana: boost::hana::basic_tuple< Xs > Struct Template Reference

Boost , ,

Boost.Hana  1.0.1
Your standard library for metaprogramming
Разрезанная версия hana::tuple.

В то время как hana::tuple стремится предоставить интерфейс, несколько близкий к std::tuple, basic_tuple обеспечивает строгий минимум, необходимый для реализации закрытия с максимальной эффективностью компиляционного времени.

Modeled concepts

Следствие, и все понятия, которые оно утоляет

Synopsis of associated functions

template<>
constexpr auto make< basic_tuple_tag >
 Function object for creating a basic_tuple. More...
 
constexpr auto make_basic_tuple = make<basic_tuple_tag>
 Alias to make<basic_tuple_tag>; provided for convenience. More...
 

Associated functions

template<typename... Xs>
template<>
constexpr auto make< basic_tuple_tag >
related
Initial value:
= [](auto&& ...xs) {
return basic_tuple<std::decay_t<decltype(xs)>...>{forwarded(xs)...};
}

Функция объект для создания basic_tuple.

Учитывая ноль или более объектов xs..., make<basic_tuple_tag> возвращает новый basic_tuple, содержащий эти объекты. Элементы удерживаются по величине внутри полученного тюпа, и поэтому они копируются или перемещаются. Это аналогично std::make_tuple для создания basic_tuples.

Example

// Copyright Louis Dionne 2013-2016
// Distributed under the Boost Software License, Version 1.0.
// (See accompanying file LICENSE.md or copy at http://boost.org/LICENSE_1_0.txt)
#include <type_traits>
namespace hana = boost::hana;
constexpr hana::basic_tuple<int, char, double> xs{1, '2', 3.3};
constexpr auto ys = hana::make<hana::basic_tuple_tag>(1, '2', 3.3);
constexpr auto zs = hana::make_basic_tuple(1, '2', 3.3);
static_assert(std::is_same<decltype(ys), decltype(xs)>::value, "");
static_assert(std::is_same<decltype(zs), decltype(xs)>::value, "");
int main() { }
template<typename... Xs>
constexpr auto make_basic_tuple = make<basic_tuple_tag>
related

make<basic_tuple_tag>; предоставляется для удобства.

Example

// Copyright Louis Dionne 2013-2016
// Distributed under the Boost Software License, Version 1.0.
// (See accompanying file LICENSE.md or copy at http://boost.org/LICENSE_1_0.txt)
#include <type_traits>
namespace hana = boost::hana;
constexpr hana::basic_tuple<int, char, double> xs{1, '2', 3.3};
constexpr auto ys = hana::make<hana::basic_tuple_tag>(1, '2', 3.3);
constexpr auto zs = hana::make_basic_tuple(1, '2', 3.3);
static_assert(std::is_same<decltype(ys), decltype(xs)>::value, "");
static_assert(std::is_same<decltype(zs), decltype(xs)>::value, "");
int main() { }

Статья Boost.Hana: boost::hana::basic_tuple< Xs > Struct Template Reference раздела может быть полезна для разработчиков на c++ и boost.




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.



:: Главная :: ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-30 11:47:00
2025-05-20 05:26:59/0.0034630298614502/0