The constructs in a C++ program create, destroy, refer to, access, and
manipulate objects
.[
Note 1: 
A function is not an object, regardless of whether or not it
occupies storage in the way that objects do
. — 
end note]
The properties of an
object are determined when the object is created
.[
Note 2: 
Some objects are
polymorphic (
[class.virtual]); the implementation
generates information associated with each such object that makes it
possible to determine that object's type during program execution
. — 
end note]