EUR 37,14
  • Tous les prix incluent la TVA.
Temporairement en rupture de stock.
Commandez maintenant et nous vous livrerons cet article lorsqu'il sera disponible. Nous vous enverrons un e-mail avec une date d'estimation de livraison dès que nous aurons plus d'informations. Cet article ne vous sera facturé qu'au moment de son expédition.
Expédié et vendu par Amazon. Emballage cadeau disponible.
Quantité :1
Advanced+C+++Metaprogramm... a été ajouté à votre Panier
Vous l'avez déjà ?
Repliez vers l'arrière Repliez vers l'avant
Ecoutez Lecture en cours... Interrompu   Vous écoutez un extrait de l'édition audio Audible
En savoir plus
Voir les 2 images

Advanced C++ Metaprogramming (Anglais) Broché – 14 juin 2011

Voir les formats et éditions Masquer les autres formats et éditions
Prix Amazon
Neuf à partir de Occasion à partir de
Format Kindle
"Veuillez réessayer"
"Veuillez réessayer"
EUR 37,14
EUR 37,14 EUR 139,88
Note: Cet article est éligible à la livraison en points de collecte. Détails
Récupérer votre colis où vous voulez quand vous voulez.
  • Choisissez parmi 17 000 points de collecte en France
  • Les membres du programme Amazon Premium bénéficient de livraison gratuites illimitées
Comment commander vers un point de collecte ?
  1. Trouvez votre point de collecte et ajoutez-le à votre carnet d’adresses
  2. Sélectionnez cette adresse lors de votre commande
Plus d’informations
click to open popover

Offres spéciales et liens associés

Descriptions du produit

Présentation de l'éditeur

The book tries to be both an introduction and a reference to C++ template metaprogramming; TMP is presented in the book as a set of techniques that will bring a new style in C++ and make code exceptionally clear and efficient. The book deals with language aspects, design patterns, examples and applications (seen as case studies). Special emphasis is put on small reusable techniques that will improve the quality of daily work. Visit for book errata and updates.

Biographie de l'auteur

Davide Di Gennaro loves to introduce himself as a mathematician, but a better definition would be a philosopher. After studying history of art and functional analysis for some years, he switched to algorithm design and C++. He has been showing the marvels of metaprogramming techniques since the late nineties: as nobody could really understand him, he was eventually nicknamed "the professor". He works for big companies, where his real identity is ignored, and he spends his free time as a photographer. Someone said that "he makes the impossible possible". --Ce texte fait référence à l'édition Broché .

Aucun appareil Kindle n'est requis. Téléchargez l'une des applis Kindle gratuites et commencez à lire les livres Kindle sur votre smartphone, tablette ou ordinateur.

  • Apple
  • Android
  • Windows Phone
  • Android

Pour obtenir l'appli gratuite, saisissez votre ou numéro de téléphone mobile.

Détails sur le produit

Commentaires en ligne

Il n'y a pas encore de commentaires clients sur
5 étoiles
4 étoiles
3 étoiles
2 étoiles
1 étoile

Commentaires client les plus utiles sur (beta) HASH(0x969918b8) étoiles sur 5 25 commentaires
34 internautes sur 36 ont trouvé ce commentaire utile 
HASH(0x9694106c) étoiles sur 5 A Classic 17 décembre 2011
Par Marco Marcello - Publié sur
Format: Broché Achat vérifié
I initially approached this book with a bit of caution, as I had found other popular books I read previously on C++ templates quite heavy and mostly irrelevant to my day job.
But as soon as I read chapters 2 and 3 I realized this book is very different.
The first chapters explain in a clear way all that most people need to know about templates and template metafunctions,
and provide the reader with a very practical set of ideas that can immediately be implemented in the code you're working on.
For example, I started using static assertions and tagging almost immediately.
Then the real meat starts, with chapter 4 explaining in detail how to write metafunctions and then proceeding to overload resolution in chapter 5.
Before reading this, I thought this was mostly relevant to compiler writers, but Di Gennaro's explanation of how to exploit SFINAE was really useful
to me, in fact I started using only_if in my code on the same day I read the section.
After this, Advanced C++ Metaprogramming really gets "Advanced" and explains many practical ways of programming with templates,
ensuring that the most amount of computation is executed at compile time. There is a very good section on Lambda expressions, though I've not had the chance to use them yet.
Besides the tools that this book teaches, I think its biggest strength is that difficulty progression is so well calibrated that by the time I finished the book I really have become a better programmer. My way of thinking about my code has changed. Now I see new possibilities, and I try to see if things can be done at compile time using templates.
I will definitely put this book next to my other all-time favourite, Inside the C++ Object Model by Lippman.
Advanced C++ Metaprogramming has the potential to become a classic.
15 internautes sur 16 ont trouvé ce commentaire utile 
HASH(0x966c2510) étoiles sur 5 This is a *very* technical book, but a very good one 26 avril 2012
Par willfe - Publié sur
Format: Broché
This book is a mind-bender. Metaprogramming in C++ using templates is a "dark art" of its own, but this book helps demonstrate both the utility of it and shows loads of practical examples of what to do with it (and how). Do *not* expect to digest this book in a single sitting, or even in several. It is *thick* -- not just in terms of page count, but in terms of information density. It is certainly not "light reading." Expect instead to read and re-read sections at a time to fully grasp what's being discussed. Expect more success and understanding in reading this text when done while working with a compiler to actually test the concepts being presented as they're encountered. This is fun stuff, but it's thick and heavy stuff.

The book is self-published by its author, and it shows. There are spelling and grammar errors, the margins are a bit too narrow, and some text is hard to read because of the choice to use gradient backgrounds that get a little too dark. None of this matters, however -- the content of the book is outstanding and this kind of self-publishing is to be applauded and encouraged. In fact, I'd love to collaborate with this author (or others like him) on editing a second edition both to further my own understanding of metaprogramming and to improve the already good quality of this book.
39 internautes sur 53 ont trouvé ce commentaire utile 
HASH(0x9688227c) étoiles sur 5 Good intention but badly written 25 août 2012
Par Hao Xiong - Publié sur
Format: Broché Achat vérifié
It is unbelievable to me that so many people found this book worthy of 5 stars, beyond belief. I don't doubt the author is a good programmer who has had a lot of experience with template metaprogramming, and I can appreciate collecting a lot of obscure techniques in one book. Those are all good reasons to write a book. But the writing is plain terrible. There is no beginning, no gradual explication, just short comments on short snippet of codes. This is not a problem for introducing simple constructs in simple languages such as basic Python, but for C++ template, it is a disaster. I have to read this book slower than I read real analysis textbooks and still get lost on every page.

I bought this book when I saw many good reviews and I felt a real need for such a book, but now I don't know what to think of them. Even reviews for classical C++ books don't get such uniformly good reviews; all but one gave five stars? Those reviews have jargon but praise the book in general terms. I don't want to impugn people without evidence, but I just don't believe the reviewers. Next time I will be more wary of unbelievably good reviews that don't show depth.
22 internautes sur 29 ont trouvé ce commentaire utile 
HASH(0x966caa5c) étoiles sur 5 A lot of info, A lot of mistakes 5 juin 2013
Par Francisco - Publié sur
Format: Broché Achat vérifié
This is not a good book, plain and simple. It's not written professionally (also check Hao Xiong review), it's like a hacker listing of a bunch of tricks, they may be useful indeed, and it's a bit sad for a language one have to know so many, but it's badly written, badly printed. It was the worst print I got in my hands ever, and I think it'll be the only one to this point, I mean, it's literally crooked, it's not rectangular, its form is like a trapezium, all page contents are "floating", which means the margins are also irregular, expected since the book itself is irregular. It's a pretty amateur job.

There's overall lack of organization, you fell like getting trick after trick endlessly.

There's none, zero, mention of variadic templates and modern stuff. This book got released at the same epoch as c++11 and I expected it would talk a bit about it but no, it's like such a thing didn't even exist.

Mailing the author I got this opinion:

>The book is written for c++03.
>Most compilers don't support c++0x, and most companies don't allow c++0x code.
>So this goes against one of the main goals of the book, which is to be
>useful TODAY.

> With variadic templates, this could be unbounded, allowing you to declare a
> variable that can hold an instance of one of 100 types.
> And as stated in [...] for GCC:
> "Available as of 2006-09-13, revised on 2006-09-19"
> And in [...] for Clang:
> "Wed Jan 19 16:11:50 2011 CST: Variadic templates are fully implemented."

>gcc is not a compiler, it's a mess.

Me (actually dreaming):
>And in Visual Studio, which I bet will be there, on the next release.

>this is what I'm waiting for: when we both have a VS on our
>workstation that implements VT, then let's discuss again.

>And when I buy a book that states that advanced, I don't expect the author
>judging what I should *not learn* of advanced technics.

>nope, the reason why you buy a book is PRECISELY because the author,
>from his experience, is usually able to "judge" (i.e. pick and sort
>topics) much better than you would do by yourself. this is exactly why
>they invented such things called universities.
>what you describe here is probably "the encyclopedia of template
>metaprogramming", which is something that I haven't written yet

I'm so glad there's clang and gcc, at last they are able to actually work, and evolve.
2 internautes sur 2 ont trouvé ce commentaire utile 
HASH(0x968854a4) étoiles sur 5 An Amazingly Good Book 22 avril 2016
Par Jerry - Publié sur
Format: Broché
This is an extraordinary book. I have read all of the supposedly greatest programming books on C and C++ on the market and this one has no match. First of all, Apress did clean up much of the writing in this book and so it reads as well or better than any book at its level.There is no doubt that Di Gennaro has strong opinions. But that is one of the things that makes it outstanding. It is absolutely clear that he knows this stuff as well as anyone in the world. But if you read this book and you spend the time to understand it, you will be an extremely valuable programmer. In fact, if you are asked what programming book you read last in an interview, this is the book that you want to mention. This book teaches it. And by the way, for the reviewer that mentioned it not being up to date, that person completely missed the point. The point is that the code in this book will run correctly on the major compilers. This still is not so for the so-called modern C++ compiler books. So, you will be able to run and mod this code and learn more without getting stupid compiler errors. This means that Di Gennaro can tackle tougher issues than in other metaprogramming books. This is a masterpiece and if you think you can handle this book, then you really need to read it.
Ces commentaires ont-ils été utiles ? Dites-le-nous


Souhaitez-vous compléter ou améliorer les informations sur ce produit ? Ou faire modifier les images?