我记得是必须这样,为了效率,CArray没有判断越界的问题,好像只是在debug版下有个断言。 楼主可以试试,如果我没记错的话,GetAt一个不存在的序号,程序将崩溃!从这个函数的申明就可以看出来,这个函数是不会返回失败的,失败就是程序崩溃,这是MSDN中抄的: Passing a negative value or a value greater than the value returned by GetUpperBound will result in a failed assertion.
楼主可以试试,如果我没记错的话,GetAt一个不存在的序号,程序将崩溃!从这个函数的申明就可以看出来,这个函数是不会返回失败的,失败就是程序崩溃,这是MSDN中抄的:
Passing a negative value or a value greater than the value returned by GetUpperBound will result in a failed assertion.