Consider the following
Cat frisky;
frisky is an object yet frisky is also an object type.
frsiky is region of storage yet frisky is also an identifier.
frisky is also a Cat type.
Nice syllogism with semantic shift.
Let me rephrase your premise
Cat frisky;
frisky is a name designating an object of type Cat.
frisky is an identifier for an entity which has the property of having
a region of storage.
frisky has a type which is Cat class.
An object is an object type, that is why it's called an object.
An integer is an integer type , this is why we call it an integer
etc etc.
An object is an instance of the object type, that's is why we call it
an object.
An integer is an instance of an integer type, that's is why we call it
an integer.
etc tec.
There is no instantiation here, yet there is an object.
What do you call instantiation ?
It is a declaration and a definition. Depending on the context, frisky
has either static or automatic storage duration.
For automatic duration, the instantiation is at least on the point of
defintion.
For static duration, it is a bit more complicated but, in short, it is
before main() for globals.
The object declared here is defined by the definition of its type, in the
class Cat.
Its type is not *in the class Cat* but it is the class Cat.
If Cat has an Eat() member function then frisky has an Eat() member
function.
If Cat has an Eat() member function, the expression frisky.Eat() will
be resolved by determining frisky is of type Cat and that Cat has a
member function matching Eat().
[snip]
The term object is not simply a block of memory. Whether the inconsistent
standards state this or not, which they don't.
Is it the 'simply' that bothers you. In this case, I agree since an
object has properties not necessarily carried within the region of
storage; namely:
- a name (frisky)
- a storage duration (automatic, static or dynamic)
- a type (Cat) - which may requires some data in the region of
storage for polymorphic types
Everybody (the standard included) will agree that:
An object *is* a region of storage and *has* properties.
The relevant part of the standard (§1.8/1) has been abundantly quoted
by you and others.