hi, yesterday i read about arrays, and surprised when i read that C++ doesn't support array of references. my main question is why, is there any reasons?
Because references aren't considered objects by the language, unlike integers, pointers, etc. You also can't have pointers to references and you can't dynamically allocate references. There are only two valid uses of references:
1 2 3
T &r=/*...*/;
T f(/*...*/T2 &p/*...*/){/*...*/}
All these restrictions come from the fact that the language doesn't allow uninitialized references.
EDIT: Oh, they can also be class members, but they have to be initialized in an initialization list in the constructor, and having at least one reference as a class member makes the class uncopyable.