代码改变世界

传递对象时发现的一个有趣的小问题

2007-09-18 10:10    阅读(220)  评论(0编辑  收藏  举报

代码如下:

void CreateArryList(ArrayList 0) {
    
for (int i = 0; i < 10; i++)
        
0.Add("AL" + i.ToString());
}


看到 ArryList 0 了吗?你如果是第一见到的话,大概会有和我一样的感觉:它是正确的吗?
实际上它执行起来是正确的,0在这里不是一个数字,而是传递进来的对象。
但看到下面的代码,又产生了新的疑惑:

void CreateArryList(ArrayList 0) {
    0.Add("ABC");
}


这里 0 就被认为是一个 int,而且在写新的函数时它有时会出错,奇怪吧。

 

注:此方法已过时,请用 2.0 以前版本测试