可以在类之外定义委托实例吗?

发布于 2024-10-16 02:24:42 字数 61 浏览 4 评论 0原文

根据我所读到的内容,委托实例总是使用类作为输入或在类内部定义。

为什么我不能独立定义委托实例?

From what I am reading, a delegate instance is always defined with a class as an input or inside a class.

Why can't I define a delegate instance independently?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

日记撕了你也走了 2024-10-23 02:24:42

委托是一种类型,您可以在命名空间范围(包括全局命名空间)定义它。

由于委托是引用类型,因此委托实例始终放置在托管(垃圾收集)堆上。可以使用 gcnew 运算符创建委托实例,Delegate::CreateDelegate 方法,或使用堆栈语义语法(仅限 C++/CLI)。

委托类型的引用变量(包括包装永久绑定引用的堆栈语义语法变量、堆上的实例以及对 IDisposable::Dispose 的自动调用)可以作为实例或静态存在托管类型的成员、自动局部变量、静态局部变量或(在 C++/CLI 中)作为全局(命名空间范围)变量。

A delegate is a type, and you can define it at namespace scope (including the global namespace).

Since delegates are reference types, delegate instances always are placed on the managed (garbage collected) heap. Delegate instances can be created with the gcnew operator, the Delegate::CreateDelegate method, or using stack semantics syntax (C++/CLI only).

A reference variable of delegate type (including stack semantics syntax variables which wrap a permanently-bound reference, an instance on the heap, and an automatic call to IDisposable::Dispose) can exist as an instance or static member of a managed type, an automatic local variable, a static local variable, or (in C++/CLI) as a global (namespace scope) variable.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文