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

BOOST_PP_ENUM_SHIFTED_PARAMS_Z

Boost , ,

The BOOST_PP_ENUM_SHIFTED_PARAMS_Z macro generates a comma-separated, shifted list of parameters.  It reenters BOOST_PP_REPEAT with maximum efficiency.

Usage

BOOST_PP_ENUM_SHIFTED_PARAMS_Z(z, count, param)

Arguments

z
The next available BOOST_PP_REPEAT dimension.
count
The number of parameters to generate.  Valid values range from 0 to BOOST_PP_LIMIT_REPEAT.
param
The text of the parameter.  BOOST_PP_ENUM_SHIFTED_PARAMS_Z concatenates numbers ranging from 1 to count - 1 to generate parameters.

Remarks

This macro expands to the comma-separated sequence:
param ## 1, ... param ## count - 1

See Also

Requirements

Header:  <boost/preprocessor/repetition/enum_shifted_params.hpp>

Sample Code

#include <boost/preprocessor/repetition/enum_params.hpp>
#include <boost/preprocessor/repetition/enum_shifted_params.hpp>
#include <boost/preprocessor/repetition/repeat.hpp>
int add(void) {
   return 0;
}
#define ADD_F(z, n, _) \
   int add_f(BOOST_PP_ENUM_PARAMS_Z(z, BOOST_PP_INC(n), int p)) { \
      return p0 + add_f(BOOST_PP_ENUM_SHIFTED_PARAMS_Z(z, BOOST_PP_INC(n), p)); \
   } \
   /**/
BOOST_PP_REPEAT(5, ADD_F, nil)

© Copyright Housemarque Oy 2002
© Copyright Paul Mensonides 2002

Распространяется в соответствии с лицензией Boost Software License, Version 1.0. (См. сопроводительный файл)LICENSE_1_0.txtили копия наwww.boost.org/LICENSE_1_0.txt

Статья BOOST_PP_ENUM_SHIFTED_PARAMS_Z раздела может быть полезна для разработчиков на c++ и boost.




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



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


реклама


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

Время компиляции файла: 2024-08-30 11:47:00
2025-05-22 12:31:29/0.0031218528747559/0