Dle vašeho tvrdošíjného trvání na definicích stále dokazujete, že sice máte C++ našprtané, ale absolutně jste nepochopil, o čem OOP je. Objekty například vůbec nemusí být definované třídou, což lze ukázat třeba v javascriptu. Ony opravdové OOP jazyky ani třídy nemají. A pokud mluvíme OOP v souvislosti s C++. Použiju příměr uvedeny zde v diskuzi... Ano: Třídy jsou takové berličky, které zjednoduššují v jazyce C programovat objektově. C++ nabízí spoustu takových berliček, pomocných syntaxtických konstrukcí, a jiných záležitostí. Ale právě proto, že to jsou jen berličky, není C++ čistý plnohodnotný objektový jazyk. Bohužel situace je taková, že v poměru cena/výkon je to nejlepší, co znám.
PS: Co byste řekly na instanci šablony? Ačkoliv to dle Vaší definice není objekt, tak budete se divit, ale objektem je. Analogii tu najdete.