I just found this in an online C++ tutorial:
"There are several ways to create objects in a C++ program. One is to define a variable as being of a particular class, either as a global variable or as a local variable within a block. When the declaration is encountered during program execution, space is allocated for the object and the constructor,if any, for the object is called. Similarly, when an object variable goes out of scope, its destructor is called automatically.
Another way to create an object is to declare a variable that is a pointer to the object class and call the C++ new operator, which will allocate space for the object and call the constructor, if any, for the object. In this case, the pointer variable must be explicitly deallocated with the delete operator. The constructor for the object is executed when new is called, and the destructor is executed when delete is called. An object can also be constructed by the explicit use of a constructor in an expression."
Would one of you C++ Gurus please confirm that for me, if I declare a variable as an object directly rather than a pointer to an object it gets initialised automatically when the routine is called and deleted automatically once it goes out of scope.
Also if I have a pointer to an object is it possible to get hold of the object directly so I can use object.method() rather than object->method() ?
I know it's a small thing, but I just like using the dot better.

