The first operator, called for arrays that are not const, may be used on either the right (r-value) or the left (l-value) of an assignment statement. The second, called for const arrays, may be used only on the right.
The Debug version of the library asserts if the subscript (either on the left or right side of an assignment statement) is out of bounds.
// Add elements to the array. for (int i = 0; i < 10; i++)
// Modify all the points in the array. for (int i = 0; i <= myArray.GetUpperBound(); i++)
myArray[i].x = 0;