Quote:
Pretty to declare all private attributes in a struct, then defining a pointer to that struct in the iterator class. This was what I kind of meant by a pointer to the aggregate when the iterator was not nested.
No. You misunderstand me. All the private attributes of your class do NOT go into the struct. The purpose of the struct is to provide a dummy container for T. "T" can be anything. Therefore you want to be able to manipulate all elements of T with "your" container, but only as those operations are relevant to the purpose of your container. I.e. - if T is another class object, than your Vector
Quote:
I want to create a new Vector class, which is an array of values and related operators/functions. I do not want to use STL's vector, since it is not the same thing as I want (vector is really a container, I want it to be an element of a vector space).
In your first sentence you say, as it seems to me, that you do indeed want a STL-like vector (hence the array of values w/related operators/functions). Then you utterly confuse me with "an element of a vector space." If you need to point-to or have a vector in your class, I suggest re-writing all this and simply inheriting the std::vector, and adding your own code as needed.