static MyObject *singleton = 0; char buff[sizeof(MyObject)]; MyObject getSingleton() { if (singleton == 0) singleton = new(buffer) MyObject(); return singleton; }Tohle se dá samozřejmě napsat i šablonou, pak se deklarace takového singletonu provede na jedné řádce. Opravdu tomu nerozumíte!