...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
Returns the result type of at_c
[8].
template< typename Seq, int N> struct at_c { typedef unspecified type; };
Table 1.29. Parameters
Parameter |
Requirement |
Description |
---|---|---|
|
A model of Random Access Sequence |
Argument sequence |
|
Positive integer index |
Index of element |
result_of::at_c<Seq, N>::type
Return type: Any type
Precondition: 0
<= N
<
(where result_of::size
<Seq>::valueSeq
is not Unbounded
Sequence)
Semantics: Returns the result type of
using at_c
to access the N
th element of Seq
.
#include <boost/fusion/sequence/intrinsic/at.hpp> #include <boost/fusion/include/at.hpp>
typedefvector
<int,float,char> vec; BOOST_MPL_ASSERT((boost::is_same<result_of::at_c
<vec, 1>::type, float&>));
[8]
result_of::at_c
reflects the actual return
type of the function at_c
. Sequence(s)
typically return references to its elements via the at_c
function. If you want
to get the actual element type, use result_of::value_at_c