- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C中间类通信方法
C#中间类通信方法.txt25爱是一盏灯,黑暗中照亮前行的远方;爱是一首诗,冰冷中温暖渴求的心房;爱是夏日的风,是冬日的阳,是春日的雨,是秋日的果。 本文由chunhui_1091贡献 doc文档可能在WAP端浏览体验不佳。建议您优先选择TXT,或下载源文件到本机查看。 C 转向 C#的疑惑:C#中类间通信方法初探 C#中没有自由函数也没有自由变量,所有的一切都必须封装封装没有函数在类中。在 C 中,通过全局变量 来进行函数间通信和类间通信是常用的全局常用进行方法,然而这在 C#中却变成不可能任务,这的确让 C 程序员苦恼。C#当然有它充分的理由不支持自由函数和自由变量,因为ldquoldquo 支持当然;自由”就暗 示着冲突、不安全等等影响程序健壮性和可维安全程序冲突护性的因素。当然有很多技术可以解决 C#中的 类间通信问题,本文就介绍其中的几种。 一.问题域涉及的主要 Class 在介绍之前先作一下说明。一般我们可以把类间通信时需我们可以介绍要的各相关数据元素封装成一个结 构,我称之为“通信结称之为封装数据构” ,将其记为 Information struct,它是一个纯粹的 C 结构,即除了 公共的数据成员外,什么都没有。当类间需没有什么成员要交换消息时就可以生成一个“通信结构”实例, 然后在可以消息交换类间传递。另外我把提供信息的类称为 Provider Class(以下简称为 Provider) ,接受信 息的类称为 Master Class(以下简称为 Master) 。当然,两个相互通信的类可以互为 Provider 和 Master。请 注意,后面将出现 Provider object 和 Master object,它们对应于是 Provider 和 Master 的实例。 Master 从 Provider 获取所需信息主要有两种方式:正向获取和反向获取。每主要反向获取一种方式 又有几种不同的实现方式。下面我将一一介绍。下面实现介绍 二.正向获取信息 所谓“正向“获取信息,就是按照通常的直线思考方式来直线通常所谓考虑,Master 需要从 Provider 获取信息,就直接让 Master 访问 Provider 的某个成员。在这种方式下,Master 处于主动地位,因为总是由 它去主动拜访 Provider,而 Provider 相对比较被动。 不出你所料,主要有以下几种方法。 1. Provider 暴露一个成员变量或属性 Master 可以通过访问这个成员变量或属性得到所需数据。这种方访问这种可以法对于得到一些简单的非保 密性信息是比较方便的,通常必威体育官网网址性比较通常这些信息可以被 Provider 自己直接提供,并且不易发生变化, 比如获取某个控件(变化比如获取当然是一个 Provider object)的 size 或 color 等等。此方法的不利之处是, 如果 Provider 所提供的数据是必威体育官网网址性的,那么这个安全性就得不到保证必威体育官网网址性安全性那么。 2. Provider 暴露一个方法 如果所需的信息比较复杂(比如需要通过简单的计算才能比较比如复杂得到) ,或经常处于变化之中,通过 一个方法来提供这样这样变化方法的信息无疑是更好的选择。有两种实现方式: (1)通过返回值 这个我们经常用,在这种情况下,Master 还可以通过参数来和 Provider 进行更多的交流。如: publicInformationGetInformation 参数 ; (2)通过 ref 或 out 参数 如果一个方法的返回值被用于其它目的,如判断方法是否方法是否用于执行成功等,此时可以用 ref 或 out 来将所需的信息从方法中“带出” 。如: public int GetInformation out Informationinfo ; 或许你已经看出来了,正向获取信息的方式的主要问题在主要已经出来于,Master 不知道 Provider 会于何 时准备好所需的数据,也就是说,Master 是在一个合适的时间拜访 Provider 吗?如果时机不恰当,显然就 得不到正确的信息。 为了解决这个问题,我们可以采取反向获取信息的方式。反向我们可以 三.反向获取信息 所谓“反向”获取信息,就是 Provider 在准备好数据后,主动将数据提供给 Master。与正向获取信息的方 式相比较,可以看到,主――客关比较可以获取系发生了变化,现在是 Provider 主动去拜访 Master。这就 很自然地解决了正向获取信息方式的时机可能不成时机获取自然熟的问题。 在实际中,用的最多的就是反向获取信息的方式,普遍的反向获取普遍情况是这样的:在 Master 需要数据 时,创建一个 Provider object,Pro
您可能关注的文档
- CT19BW型弹簧操作机构.doc
- CT19BW型弹簧操动机构.doc
- 5矿物质和维生素Convertor.doc
- 5破坏森林的后果.doc
- 5砼含气量测定仪校准规程.doc
- CT2011高压开关动作试验仪.doc
- CT3210-10A-5mA-30产品规格书.doc
- CT3331绝缘油微水测试仪.doc
- CT3332闭口闪点测试仪.doc
- 5科研创新课程报告格式要求.doc
- 2025年中国乙氧苯柳胺软膏市场调查研究报告.docx
- 2025年及未来5年电信设备项目市场数据调查、监测研究报告.docx
- 2025年中国产宝口服液市场调查研究报告.docx
- 2025年及未来5年远红外线热敷按摩仪之瑞颈灵项目市场数据分析可行性研究报告.docx
- 2025年中国2—氨基—4,6—二氯嘧啶市场调查研究报告.docx
- 2025年及未来5年双层风琴帘项目市场数据调查、监测研究报告.docx
- 2025年及未来5年多功能短路定位分析仪项目市场数据调查、监测研究报告.docx
- 2025年中国换芯型烟嘴市场调查研究报告.docx
- 2025年及未来5年印章防伪项目市场数据调查、监测研究报告.docx
- 2025年中国超小型冷冻修边机市场调查研究报告.docx
最近下载
- 超声科院感自查问题及整改措施记录.docx
- 土地整理用施工月报_新.pdf VIP
- U8 cloud 操作手册(资产管理)-资产信息管理.pdf VIP
- 2025年宪法知识竞赛试题(附答案).docx
- 模块化构建的MICROMINE软件培训教程(史上最全).pdf VIP
- 北京朝阳人大附朝阳分校2025届数学八年级第一学期期末经典试题含解析.doc VIP
- U8 cloud 操作手册(财务管理)-报销管理.pdf VIP
- 2024年江苏省建湖县文化馆公开招聘试题带答案详解.docx VIP
- 城市公园智慧化生态监测系统2025年环境监测技术升级报告.docx
- 静水压强的测算静水压强与静水压力计算.ppt VIP
有哪些信誉好的足球投注网站
文档评论(0)