模拟Visual Basic的ReDim语句,C#实现,仅支持1维数组。若不需要检查参数的合法性,则只要最后4行程序就可以了。请大家讨论一下,当传入的数组不是1维时,是抛出RankException异常,还是抛出ArgumentException异常(可以指明参数名)为好。
1
using System;
2
3
static Array ReDim(Array array, int newLength)
4
}
2
3
4
看看以下3个构造函数也很有意思。不知是不是M$的疏忽,如此相似的3个异常,其构造函数的参数顺序竟不一致,实在让人无所适从。
1
public ArgumentException (string message, string paramName);
2
public ArgumentNullException (string paramName, string message );
3
public ArgumentOutOfRangeException(string paramName, string message );
2
3