placeholderexpression.rst

来自「C++的一个好库。。。现在很流行」· RST 代码 · 共 45 行

RST
45
字号
.. Metafunctions/Concepts//Placeholder Expression |40

Placeholder Expression
======================

Description
-----------

A |Placeholder Expression| is a type that is either a |placeholder| or a class
template specialization with at least one argument that itself is a 
|Placeholder Expression|.


Expression requirements
-----------------------

If ``X`` is a class template, and ``a1``,... ``an`` are arbitrary types, then
``X<a1,...,an>`` is a |Placeholder Expression| if and only if all of the following
conditions hold:

* At least one of the template arguments ``a1``,... ``an`` is a |placeholder|
  or a |Placeholder Expression|.
  
* All of ``X``\ 's template parameters, including the default ones, are types.

* The number of ``X``\ 's template parameters, including the default ones, is
  less or equal to the value of ``BOOST_MPL_LIMIT_METAFUNCTION_ARITY`` 
  `configuration macro`__.

__ `Configuration`_


Models
------

* |_1|
* ``plus<_, int_<2> >``
* ``if_< less<_1, int_<7> >, plus<_1,_2>, _1 >``


See also
--------

|Lambda Expression|, |Placeholders|, |Metafunctions|, |apply|, |lambda|

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?