Int_t my_ints[10];and then to access the ith:-
my_ints[i]Caution: C++ array indeces start from 0!!, so to sum all these integers:-
Int_t sum = 0; for (Int_t index=0; index<10; index++) sum += my_ints[index];
C++ arrays are no more dynamic than FORTRAN ones, so if the application calls for arrays where the size won't be known until execution time then a container object i.e. one that can hold other objects should be used instead, such as ROOT's TObjArray.
Multi-dimensional arrays are possible, although the syntax can drive a FORTRAN programmer a little crazy: each dimension is in a separate pair of [] and the order is reversed, so:-
Int_t my_ints[5][10];represents 5 arrays, each being an array of 10 integers. It may help to understand C++ nests constructs to develope new ones. So, rather than have multiply dimensioned arrays, C++ reuses the single array concept but allows arrays to be stored in arrays, hence an array of arrays. Then the [] closest to the identifier has to be the one that operates first, hence the ordering.
Multi-dimensional arrays are generally very inflexible, C++ won't allow you to play the same games changing array dimensionality when passing the array to a function. This makes writing general purpose matrix processing libraries difficult. Fortunately, C++ also provides a better way of think about matrices - as objects. In this way operations on matrices become member functions of a matrix class.
See operator precedence