Boost logo

Boost Users :

Subject: Re: [Boost-users] boost.pp : generate a const size_t array initializer
From: Hicham Mouline (hicham_at_[hidden])
Date: 2009-08-20 18:19:29


From: boost-users-bounces_at_[hidden]
[mailto:boost-users-bounces_at_[hidden]] On Behalf Of Roman Perepelitsa
Sent: 12 August 2009 12:26
To: boost-users_at_[hidden]
Subject: Re: [Boost-users] boost.pp : generate a const size_t array
initializer

2009/8/12 Hicham Mouline <hicham_at_[hidden]>
Hello,

I have
const size_t MaxNumber = 16;

Can I generate this:
const size_t elts[MaxNumber] = {0, 1, ..., 15};

with Boost.PP?

I suppose I need to #define MaxNumber for PP?
----------------------------------------------------------------------------

--
#include <iostream>
#include <iterator>
#include <boost/preprocessor.hpp>
#define N 16
int main() {
  const int elts[] = { BOOST_PP_ENUM_PARAMS(N, BOOST_PP_EMPTY()) };
  std::copy(elts, elts + N, std::ostream_iterator<int>(std::cout, "\n"));
} 
Roman Perepelitsa.
----------------------------------------------------------------------------
--
Thanks very much.
How about generating
const int elts[] = { other_array[0], .... other_array[N-1] }; 
Basically I wished to initialize at compile time 1 const array based on
another,
I don't see any metaprogramming that allows this.
Regards,

Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net