c# – 试图理解代表

book是一个对象,Namechanged是委托类型的字段,OnNameChange是委托可以指向的方法; OnNameChange只是写入控制台窗口

使用此代码

book.NameChanged = OnNameChange;
        book.NameChanged += OnNameChange;

两个实例打印到屏幕上.

但是使用此代码

book.NameChanged += OnNameChange;
        book.NameChanged = OnNameChange;

只有一个实例打印到screen.Same行为,如下代码

book.NameChanged = OnNameChange;
        book.NameChanged = OnNameChange;

有人请赐教C#代表的基本知识.当我试图打破并进入代码本身时,我仍然是初学者并迷失方向.我向自己解释行为的微弱尝试是,如果你开始一个多演员代表,那么成功的演员也应该是多演员.

任何输出,以帮助我掌握这个概念非常感谢:D

解决方法

假设你有

const int oneBook = 1;
int bookCounter = 0;

您的第一个代码块相当于:

// bookCounter == 0
bookCounter = oneBook;
// bookCounter == 1
bookCounter += oneBook;
// bookCounter == 2

您的第二个代码块相当于:

// bookCounter == 0
bookCounter += oneBook;
// bookCounter == 1
bookCounter = oneBook;
// bookCounter == 1

委托的行为非常相似,但具有执行代码函数而不是递增的数字.

相关文章

目录简介使用JS互操作使用ClipLazor库创建项目使用方法简单测...
目录简介快速入门安装 NuGet 包实体类User数据库类DbFactory...
本文实现一个简单的配置类,原理比较简单,适用于一些小型项...
C#中Description特性主要用于枚举和属性,方法比较简单,记录...
[TOC] # 原理简介 本文参考[C#/WPF/WinForm/程序实现软件开机...
目录简介获取 HTML 文档解析 HTML 文档测试补充:使用 CSS 选...