Hay varios lugares para empezar cuando familiarizarse con la biblioteca, en función de lo que su conocimiento sobre metaprogramación en ++ metaprogramación general y C plantilla en particular. Desde la versión 1.32 Boost, la MPL viene con un tutorial en profundidad en sus conceptos fundamentales y una anotada manual de referencia que cubre todos los conceptos y componentes de la biblioteca. Si bien el tutorial sólo descubre un poco de lo que hay que metaprogramación C ++ y el MPL, es un lugar perfecto para empezar si sólo eres un poco familiarizado con el tema. Por lo menos, después de que haya terminado con él, usted será capaz de poner el resto de las cosas que aparece aquí en su contexto. El manual de referencia es el recurso para usted si usted planea - o ya lo están haciendo - un poco de desarrollo real con la biblioteca, pero una lectura casual todavía está permitido y es probable que traer muchas ideas sobre la organización de la estructura y las ideas subyacentes.
Indice:
1. Introduction1.1. Native language metaprogramming
1.2. Metaprogramming in C++
1.2.1. Numeric computations
1.2.2. Type computations
1.2.3. Type sequences
1.3. Why metaprogramming?
1.4. Why a metaprogramming library?
2. Basic usage
2.1. Conditional type selection
2.1.1. Delayed evaluation
2.2. Metafunctions
2.2.1. The simple form
2.2.2. Higher-order metafunctions
2.2.3. Metafunction classes
2.2.4. One size fits all?
2.2.5. From metafunction to metafunction class
2.3. Sequences, algorithms, and iterators
2.3.1. Introduction
2.3.2. Algorithms and sequences
2.3.3. Sequence concepts
2.3.4. Ad hoc example revisited
2.3.5. iter_fold as the main iteration algorithm
2.3.6. Sequences of numbers
2.3.7. A variety of sequences
2.3.8. Loop/recursion unrolling
3. Lambda facility
4. Code generation facilities
5. Example: a compile-time FSM generator
5.1. Implementation
5.2. Related work
6. Acknowledgements
Hosting: Drive (Direct Download for Desktop and Mobile)
Archivo: Pdf
Idioma: Ingles
Peso: (142 KB)