亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

C# - 每次都使用字段和方法而不重復對象名稱

C# - 每次都使用字段和方法而不重復對象名稱

C#
jeck貓 2021-12-25 18:27:54
我剛剛開始學習 C#。我遇到的一個常見問題是,當我使用對象實例并想要訪問/分配多個字段時,我每次都必須調用對象名稱。我來自 Delphi 的背景,我想知道 C# 是否有類似于with..doblock 的東西。例如。假設我有School帶字段的類Name和Address在 Delphi 中,我可以執行以下操作mySchool = School.new();with mySchool dobegin Name := 'School Name'; Address := 'School Address';end編譯器會理解Name并Address在mySchool對象上被調用。而在 C# 中,我必須執行以下操作mySchool = new School();mySchool.Name = "School Name";mySchool.Address = "School Address";我只是想知道是否有一種類似于上面的 Delphi 的語言結構可以消除我重復輸入對象名稱的需要。我知道在這個例子中很簡單,我應該使用參數化構造函數,但我的問題是當我用同一個對象做很多事情并且擁有這樣的語言構造時,我會節省很多打字的時間。另外,我對命名空間有模糊的了解,但我的理解是您不能將對象/變量用作命名空間。如果我錯了,請糾正我。
查看完整描述

2 回答

?
倚天杖

TA貢獻1828條經驗 獲得超3個贊

在這種情況下,您可以使用對象初始值設定項:


var mySchool = new School

{

    Name = "School Name",

    Address = "School Address"

};


查看完整回答
反對 回復 2021-12-25
?
精慕HU

TA貢獻1845條經驗 獲得超8個贊

我認為所選的答案并沒有給你你所要求的。


通過使用對象初始值設定項,您仍然必須每次都手動鍵入屬性的名稱。


構造函數是您正在尋找的:


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;

    }

}


查看完整回答
反對 回復 2021-12-25
  • 2 回答
  • 0 關注
  • 227 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號