C#-每次使用字段和方法时不重复对象名称
我刚开始学C。我遇到的一个常见问题是,当我使用一个对象实例并希望访问/分配多个字段时,每次都必须调用对象名称。我来自Delphi,我想知道C#是否有类似于..doblock的C#-每次使用字段和方法时不重复对象名称,c#,C#,我刚开始学C。我遇到的一个常见问题是,当我使用一个对象实例并希望访问/分配多个字段时,每次都必须调用对象名称。我来自Delphi,我想知道C#是否有类似于..doblock的功能 比如说。比如说,我有一个学校班级,有姓名和地址 在Delphi中,我可以执行以下操作 mySchool = School.new(); with mySchool do begin Name := 'School Name'; Address := 'School Address'; end mySchool =
功能
比如说。比如说,我有一个学校
班级,有姓名
和地址
在Delphi中,我可以执行以下操作
mySchool = School.new();
with mySchool do
begin
Name := 'School Name';
Address := 'School Address';
end
mySchool = new School();
mySchool.Name = "School Name";
mySchool.Address = "School Address";
编译器会理解,mySchool
对象正在调用Name
和Address
而在C#中,我必须做以下几点
mySchool = School.new();
with mySchool do
begin
Name := 'School Name';
Address := 'School Address';
end
mySchool = new School();
mySchool.Name = "School Name";
mySchool.Address = "School Address";
我只是想知道是否有一种类似于上面的Delphi的语言结构,可以消除我重复输入对象名的需要
我知道在这个例子中,这是一个非常简单的问题,我应该使用一个参数化的构造函数,但我的问题是,当我用同一个对象做很多事情时,使用这样的语言构造可以节省我大量的输入
此外,我对名称空间也有模糊的认识,但我的理解是不能将对象/变量用作名称空间。如果我错了,请纠正我。在这种情况下,您可以使用:
var mySchool = new School
{
Name = "School Name",
Address = "School Address"
};
我认为选择的答案并不能满足你的要求
通过使用对象初始值设定项,您仍然需要每次手动键入属性的名称
构造函数是您要寻找的:
class Program
{
static void Main(string[] args)
{
School school1 = new School("School Name", "School Address");
}
}
public class School
{
public string Name { get; set; }
public string Address { get; set; }
public School(string name, string address)
{
this.Name = name;
this.Address = address;
}
}
这是很有帮助的,但是如果我只想连续多次使用该对象该怎么办呢?创建类时,可以在构造函数上指定括号中传递的参数作为attrs实例化。我对c并不十分精通,因为我讨厌微软,我只使用c来表示统一,但因为它与python/java等非常相似,所以它应该与这个班级类似(姓名、地址){#不确定是否需要调用构造函数方法或这是否足够**str Name=this.Name;str Address=this.Address;return School#您可能不需要返回类对象mySchool=new School(“霍格沃茨”,“某处巷”)