gpt4 book ai didi

c# 从委托(delegate)函数访问所有者对象

转载 作者:太空宇宙 更新时间:2023-11-03 23:21:37 25 4
gpt4 key购买 nike

我可以从该委托(delegate)中访问包含该委托(delegate)的对象吗?

例如

class Salutation {

public string OtherParty {get; set;}
public AddressDelegate GreetingDelegate {get; set;}

}

public delegate void AddressDelegate ();

然后...

void Main() {
Salutation hello = new Salutation {
OtherParty = "World",
GreetingDelegate = new AddressDelegate(HelloSayer)
};

hello.GreetingDelegate();
}

private void HelloSayer() {
Console.WriteLine(string.Format("Hello, {0}!", OtherParty));
}

那么是否可以从 HelloSayer 函数中引用 Salutation 类的 OtherParty 属性,或者我是否需要将数据作为参数传递给功能?

最佳答案

你需要通过它。委托(delegate)对所有者对象一无所知。因为它不是所有者,所以它只是一个碰巧引用了这个委托(delegate)的对象。

关于c# 从委托(delegate)函数访问所有者对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35206790/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com