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

vector

Boost , Chapter 1. Fusion 2.2 , Container

Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

PrevUpHomeNext
Description

<vector>являетсяпоследовательностью случайного доступагетерогенных типизированных данных, структурированных как простые<struct>, где каждый элемент удерживается в качестве переменной члена.<vector>является простейшим из контейнера последовательностей Fusion (вектор с N-элементами является просто структурой с N-членами), и во многих случаях наиболее эффективным.

Header
#include <boost/fusion/container/vector.hpp>
#include <boost/fusion/include/vector.hpp>
#include <boost/fusion/container/vector/vector_fwd.hpp>
#include <boost/fusion/include/vector_fwd.hpp>
// numbered forms
#include <boost/fusion/container/vector/vector10.hpp>
#include <boost/fusion/include/vector10.hpp>
#include <boost/fusion/container/vector/vector20.hpp>
#include <boost/fusion/include/vector20.hpp>
#include <boost/fusion/container/vector/vector30.hpp>
#include <boost/fusion/include/vector30.hpp>
#include <boost/fusion/container/vector/vector40.hpp>
#include <boost/fusion/include/vector40.hpp>
#include <boost/fusion/container/vector/vector50.hpp>
#include <boost/fusion/include/vector50.hpp>
Synopsis

Пронумерованные формы

struct vector0;
template <typename T0>
struct vector1;
template <typename T0, typename T1>
struct vector2;
template <typename T0, typename T1, typename T2>
struct vector3;
...
template <typename T0, typename T1, typename T2..., typename TN>
struct vectorN;
[Important] Important

Пронумерованные формы будут обесценены в C++11, и они будут предоставляться через псевдонимы. Это означает, что ваша частичная специализация может быть ошибкой компиляции. Вы можете определить, является ли это псевдонимом шаблонов или нет, используя<BOOST_FUSION_HAS_VARIADIC_VECTOR>.

Вариадическая форма

template <
    typename T0 = unspecified
  , typename T1 = unspecified
  , typename T2 = unspecified
    ...
  , typename TN = unspecified
>
struct vector;

Пронумерованная форма принимает точное количество элементов. Пример:

vector3<int, char, double>

Для компиляторов C++11 интерфейс вариадной функции не имеет верхней границы.

Для компиляторов C++03 вариадная форма принимает<0>к<FUSION_MAX_VECTOR_SIZE>элементам, где<FUSION_MAX_VECTOR_SIZE>является определяемым пользователем предопределенным максимумом, который по умолчанию соответствует<10>. Пример:

vector<int, char, double>

Вы можете определить константу препроцессора<FUSION_MAX_VECTOR_SIZE>перед включением любого заголовка Fusion для изменения по умолчанию. Пример:

#define FUSION_MAX_VECTOR_SIZE 20
Template parameters

Параметр

Описание

по умолчанию

<T0>...<TN>

Типы элементов

неуказанный

Model of

Notation

v

Показатель<vector>

V

Тип<vector>

e0...en

Неоднородные значения

s

Последовательность

Expression Semantics

Семантика выражения определяется только там, где она отличается от или не определена вПоследовательности случайного доступа.

выражение

Семантика

<V()>

Создает вектор с построенными по умолчанию элементами.

<V(e0, e1,... en)>

Создает вектор с элементами<e0>...<en>.

<V(s)>

Копия конструирует вектор изпередней последовательности,<s>.

<v= s>

Приписывается вектору<v>, изпередней последовательности,<s>.

Example
vector<int, float> v(12, 5.5f);
std::cout << at_c<0>(v) << std::endl;
std::cout << at_c<1>(v) << std::endl;

PrevUpHomeNext

Статья vector раздела Chapter 1. Fusion 2.2 Container может быть полезна для разработчиков на c++ и boost.




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



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


реклама


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

Время компиляции файла: 2024-08-30 11:47:00
2025-05-19 19:08:11/0.0090851783752441/1