Bonjour à tous, j'ai entamé le premier chapitre de Modern C++ Design et j'ai quelques questions :
-Pourquoi hérité publiquement de certaines classes de politique ?
Un exemple du livre :
-Les template<template<class>class Truc> ne sont-ils pas dangereux :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 template<class T, template <class>class CheckingPolicy> class SmartPtr : public CheckingPolicy<T>;
Par exemple, template<template<class> class Allocator> ne peut-il pas poser problème :
Comment sait-on que Allocator n'a qu'un seul template ?
Ne faudrait-il pas faire plutôt quelque chose comme (si cela est autoriser par c++0x, j'ai un doute)
template<class T, template<typename ...Args> class Allocator, typename ...AllocatorTemplates>
Ensuite, on ferait un static_assert(sizeof...(AllocatorTemplates)+1==sizeof...(Args));
-Dernière question : je n'ai pas du tout compris le "sizeof trick" pour voir si A peut être convertit explicitement en B.
Merci de m'éclairer.
Partager