C# 在C语言中使用变量引用数组索引#
我正在编写一些C#代码,其中有几个文件使用相同的公共变量(现在我们将这些变量称为a、b和C)。免责声明:请不要指责我的代码质量,我没有写它,修复它只是我的工作。这些变量是公共的,并在所有文件中共享,实际上应该是一个数组(a、b和c都做相同的事情,但属性略有不同)。我正在修改其中最大的一个文件,删除对变量的所有引用,并用数组字母[]替换它们,但其他文件包含对这些变量的不同引用。有没有办法在其他文件中定义某种变量或宏,这样我就不必更改每个文件中的每个引用 例如:在最大的文件“main.cs”中,我曾经有:C# 在C语言中使用变量引用数组索引#,c#,arrays,variables,public,C#,Arrays,Variables,Public,我正在编写一些C#代码,其中有几个文件使用相同的公共变量(现在我们将这些变量称为a、b和C)。免责声明:请不要指责我的代码质量,我没有写它,修复它只是我的工作。这些变量是公共的,并在所有文件中共享,实际上应该是一个数组(a、b和c都做相同的事情,但属性略有不同)。我正在修改其中最大的一个文件,删除对变量的所有引用,并用数组字母[]替换它们,但其他文件包含对这些变量的不同引用。有没有办法在其他文件中定义某种变量或宏,这样我就不必更改每个文件中的每个引用 例如:在最大的文件“main.cs”中,我曾
public string a;
public string b;
public string c;
a = "a";
b = "b";
c = "c";
string[] letters;
letters[0] = "a";
//etc
但我把它修好了:
public string a;
public string b;
public string c;
a = "a";
b = "b";
c = "c";
string[] letters;
letters[0] = "a";
//etc
现在,在文件“small.cs”中,我有
a = "hello world";
b = "goodbye world";
我不必检查每个文件,有没有办法将“a”定义为字母的第一个元素(letters[0]
),b referenceletters[1]
,等等?这样,程序仍将运行,在小文件中,C#将知道对“a”的任何引用实际上意味着对字母[0]的引用。使用属性:
public string A { get { return letters[0]; } }
public string a
{
get
{
return letters[0];
}
set
{
letters[0] = value;
}
}
从属性中引用它们:
public string A { get { return letters[0]; } }
public string a
{
get
{
return letters[0];
}
set
{
letters[0] = value;
}
}
而不是写作
public string a;
public string b;
public string c;
a = "a";
b = "b";
c = "c";
写
private List vals=新列表{“a”、“b”、“c”};
公共字符串a{get{return vals[0];}set{vals[0]=value;}
公共字符串b{get{return vals[1];}set{vals[1=value;}}
公共字符串c{get{return vals[2];}set{vals[2]=value;}
您尝试过getter和setter吗?谢谢,这正是我想要的!