| Revision 10 (by moose, 2006/06/25 10:02:41) |
|---|
#include <cstdio> #include <vector> #define log(a, b...) do{\ char __tmp__[2048]; \ snprintf(__tmp__, 2048, a,##b); \ fprintf(stderr, "%i:%s:%s: %s\n", __LINE__, __FUNCTION__, __FILE__, __tmp__); \ } while(0) template< typename Type, int Num > class Data { public: Data() { log("Data()"); } virtual ~Data() { log("~"); } std::vector< Type > vec; }; class PointData : public Data< double, 3 > { public: PointData() { log("PointData"); } ~PointData() { log("~PointData"); } }; int main(int argc, char **argv) { Data *data = new PointData; delete data; return 0; }