C#索引指示器问题(代码编译报错)

来源:百度知道 编辑:UC知道 时间:2024/09/21 22:07:23
using System;
public class OvrIndexer{
private string[] myData;
private int arrSize;
public OvrIndexer(int size){
arrSize = size;
myData = new string[arrSize];
for (int i = 0; i < size;i++)
{
myData[size] = "empty";
}
}
public string this[int pos]{
get{
return myData[pos];
}
set
{
myData[pos] = value;
}
}
public int this[string data]
{
get
{
int count = 0;
for (int i = 0; i < arrSize; i++)
{
if (myData[i] == data)
{
count++;
}
}
return count;
}
set
{
for (int i = 0;

在主函数传值的问题
myOvr[0] = "myname";
myOvr["empty"] = 1;这样才对,还有最下面的那个myData[i] = value; 也不对类型不正确

public OvrIndexer(int size)
{
arrSize = size;
myData = new string[arrSize];
for (int i = 0; i < size;i++)
{
myData[size] = "empty";
}
}
myData[size] = "empty"; 你这句能走通吗? size是10 你mydata【10】都超了

你返回如果是int的话 你怎么把value赋给字符串啊 当然不匹配了,你的主函数那么写也就错了呗