委托事件1
2022年监理工程师《案例分析(土建专业)》科目考试真题及答案解析

2022年监理工程师《案例分析(土建专业)》科目考试真题及答案解析案例一某工程,实施过程中发生如下事件:事件1:开工前,总监理工程师将下列工作委托总监理工程师代表负责,①组织召开监理例会;②组织编制监理实施细则;③组织审核竣工结算;④调解建设单位与施工单位的合同争议;⑤处理工程索赔。
事件2:监理人员在巡视时,发现施工单位存在下列问题:①未按施工方案施工,②使用不合格配件;③施工不当出现严重的安全事故隐患;④未按设计文件施工;⑤未经批准擅自施工;⑥实际施工进度严重滞后于计划进度且影响总工期;⑦违反强性标准。
针对上述问题,项目监理机构分别签发了《监理通知单》或《工程暂停令》要求施工单位整改或停工。
事件3:因工程实际情况发生变化,总监理工程师委托总监理工程师代表组织编制了监理规划。
调整后的监理规划经总监理工程师审核确认后即报送建设单位。
事件4:基坑开挖过程中发现实际地质情况与勘察设计文件不符,施工单位向项目监理机构提出设计变更申请,项目监理机构收到申请后进行了下列工作;①审查设计变更申请;②建议建设单位组织设计、施工等单位召开论证会:③提请建设单位联系设计单位修改设计,④评估设计变更对工程费用的影响。
【问题】1.依据《建设工程监理规范》,逐项指出事件1中总监理工程师委托的工作是否妥当?2.针对事件2中施工单位存在的问题,逐项指出项目监理机构应签发《监理通知单》,还是应签发《工程暂停令》。
3.指出事件3中的不妥之处,写出正确做法。
4.针对事件4,依据《建设工程监理规范》,项目监理机构收到申请后还应进行哪些工作?【答案】1、①组织召开监理例会:妥当,根据相关规定可以委托总监理工程师代表组织召开监理例会。
②组织编制监理实施细则:不妥,应由专业监理工程师负责。
③组织审核竣工结算:不妥,应由总监理工程师负责。
④调解建设单位与施工单位的合同争议:不妥,应由总监理工程师负责。
⑤处理工程索赔:不妥,应由总监理工程师负责。
合同索赔案例1

案例1:某港口码头工程,在签订施工合同前,业主即委托一家监理公司协助业主完善和签订施工合同,以及进行施工阶段的监理,监理工程师查看了业主(甲方)和施工单位(乙方)草拟的施工合同条件后,注意到有以下一些条款。
1、乙方按监理工程师批准的施工组织设计(或施工方案)组织施工,乙方不应承担因此引起的工期延误和费用增加的责任。
2、甲方向乙方提供施工场地的工程地质和地下主要管网线路资料,供乙方参考使用。
3、乙方不能将工程转包,但允许分包,也允许分包单位将分包的工程再次分包给其他施工单位。
4、监理工程师应当对乙方提交的施工组织设计进行审批或提出修改意见。
5、无论监理工程师是否参加隐蔽工程的验收,当其提出对已经隐蔽的工程重新检验的要求时,乙方应按要求进行剥离,并在检验合格后重新进行覆盖或者修复。
检验如果合格,甲方承担由此发生的经济支出,赔偿乙方的损失并相应顺延工期。
检验如果不合格,乙方则应承担发生的费用,工期应予顺延。
6、乙方按协议条款约定时间应向监理工程师提交实际完成工程量的报告。
监理工程师接到报告7天内按乙方提供的实际完成的工程量报告核实工程量(计量),并在计量24小时前通知乙方。
问题:请逐条指出以上合同条款中的不妥之处,并提出应如何改正。
案例2:某外资大型商业中心工程项目业主A与某一级施工企业B和某甲级监理公司C分别签订了工程施工合同和施工阶段监理合同,工程开工后发生了以下一些事件。
1、(事件一)在修建国际商品展销中心工程的基础施工中,由于班组违章作业,出现使已经过监理人员检验合格的基础钢筋位移质量事故,在浇注混凝土不久后,被监理方发现及时口头指示后书面通知承包方立即停工处理和整改。
承包方按监理方指令执行,提出质量事故报告及处理方案,经监理工程师审查批准后实施。
整改完成后,经监理方重新检验确认合格后,指令复工,继续进行基础混凝土施工。
由此造成的经济损失由承包方承担,工期拖期不予延长,监理方还将此事故及处理情况向业主作了报告。
一级建造师执业资格考试案例分析建筑工程合同管理1

案例分析题一【2013年考题】某新建图书馆工程,采用公开招标的方式,确定某施工单位中标。
双方按《建设工程施工合同(示范文本)》(GF—2013—0201)签订了施工总承包合同。
合同约定总造价14 250万元,预付备料款2800万元,每月底按月支付施工进度款。
竣工结算时,结算价款按调值公式法进行调整。
在招标和施工过程中,发生了如下事件。
事件1:建设单位自行组织招标。
招标文件规定:合格投标人为本省企业;自招标文件发出之日起15 d后投标截止;招标人对投标人提出的疑问分别以书面形式回复给相应提出疑问的投标人。
建设行政主管部门评审招标文件时,认为个别条款不符合相关规定,要求整改后再进行招标。
事件2:合同约定主要材料按占总造价比重55%计,预付备料款在起扣点之后的5次月度支付中扣回。
事件3:基坑施工时正值雨期,连续降雨导致停工6 d,造成人员窝工损失2.2万元。
一周后出现罕见特大暴雨,造成停工2 d,人员窝工损失1.4万元。
针对上述情况,施工单位分别向监理单位上报了这四项索赔申请。
事件4:某分项工程由于设计变更导致该分项工程量变化幅度达20%,合同专用条款未对变更价款进行约定。
施工单位按变更指令施工,在施工结束后的下一个月上报支付申请的同时,还上报了该设计变更的变更价款申请,监理工程师不批准变更价款。
事件5:种植屋面隐蔽工程通过监理工程师验收后开始覆土施工,建设单位对隐蔽工程质量提出异议,要求复验,施工单位不予同意。
经总监理工程师协调后三方现场复验,经检验质量满足要求。
施工单位要求补偿由此增加的费用,建设单位予以拒绝。
事件6:合同中约定,根据人工费和四项主要材料的价格指数对总造价按调值公式法进行调整。
各调值因素的比重、基准和现行价格指数见表6-1。
表6-1 各调值因素的比重、基准和现行价格指数问题1. 在事件1中,指出招标文件规定的不妥之处,并分别写出理由。
2. 在事件2中,列式计算预付备料款的起扣点是多少万元?(精确到小数点后两位)3. 在事件3中,分别判断四项索赔是否成立,并写出相应的理由。
合同索赔案例1

案例1:某港口码头工程,在签订施工合同前,业主即委托一家监理公司协助业主完善和签订施工合同,以及进行施工阶段的监理,监理工程师查看了业主(甲方)和施工单位(乙方)草拟的施工合同条件后,注意到有以下一些条款。
1、乙方按监理工程师批准的施工组织设计(或施工方案)组织施工,乙方不应承担因此引起的工期延误和费用增加的责任。
2、甲方向乙方提供施工场地的工程地质和地下主要管网线路资料,供乙方参考使用。
3、乙方不能将工程转包,但允许分包,也允许分包单位将分包的工程再次分包给其他施工单位。
4、监理工程师应当对乙方提交的施工组织设计进行审批或提出修改意见。
5、无论监理工程师是否参加隐藏工程的验收,当其提出对已经隐藏的工程从头检验的要求时,乙方应按要求进行剥离,并在检验合格后从头进行覆盖或者修复。
检验如果合格,甲方承担由此发生的经济支出,赔偿乙方的损失并相应顺延工期。
检验如果不合格,乙方则应承担发生的费用,工期应予顺延。
6、乙方按协议条款约定时间应向监理工程师提交实际完成工程量的报告。
监理工程师接到报告7 天内按乙方提供的实际完成的工程量报告核实工程量(计量),并在计量24 小时前通知乙方。
问题:请逐条指出以上合同条款中的不当之处,并提出应如何改正。
案例2:某外资大型商业中心工程项目业主A与某一级施工企业B和某甲级监理公司C分别签订了工程施工合同和施工阶段监理合同,工程开工后发生了以下一些事件。
1、(事件一)在修建国际商品展销中心工程的基础施工中,由于班组违章作业,出现使已经过监理人员检验合格的基础钢筋位移质量事故,在浇注混凝土好久后,被监理方发现及时口头指示后书面通知承包方立即停工处理和整改。
承包方按监理方指令执行,提出质量事故报告及处理方案,经监理工程师审查批准后实施。
整改完成后,经监理方从头检验确认合格后,指令复工,继续进行基础混凝土施工。
由此造成的经济损失由承包方承担,工期拖期不予延长,监理方还将此事故及处理情况向业主作了报告。
第06讲 典型案例(一)

第06讲典型案例(一)第二部分:核心案例解析说明:知识点一、二、三、四案例共用。
案例一(教材案例二)背景:某住宅工程,在施工图设计阶段招标委托监理,按《建设工程监理合同(示范文本)》GF-2012-0202签订了工程监理合同,该合同未委托相关服务工作,实施中发生以下事件:事件1:建设单位要求监理单位参与项目设计管理和施工招标工作,提出要监理单位尽早编制监理规划,与施工图设计同时进行,要求在施工招标前向建设单位报送监理规划。
事件2:总监理工程师委托总监理工程师代表组织编制监理规划,要求项目监理机构中专业监理工程师和监理员全员参与编制,并要求由总监理工程师代表审核批准后尽快报送建设单位。
事件3:编制的监理规划中提出“四控制”的基本工作任务,分别设有“工程质量控制”、“工程造价控制”、“工程进度控制”和“安全生产控制”的章节内容;并提出对危险性较大的分部分项工程,应按照当地工程安全生产监督机构的要求,编制《安全监理专项方案》。
事件4:在深基坑开挖工程准备会议上,建设单位要求项目监理机构尽早提交《深基坑工程监理实施细则》,并要求施工单位根据该细则尽快编制《深基坑工程施工方案》。
事件5:工程某部位大体积混凝土工程施工前,土建专业监理工程师编制了《大体积混凝土工程监理实施细则》,经总监理工程师审批后实施。
实施中由于外部条件变化,土建专业监理工程师对监理实施细则进行了补充,考虑到总监理工程师比较繁忙,拟报总监理工程师代表审批后继续实施。
问题:1.事件1中,建设单位的要求有何不妥?说明理由。
2.事件2中,总监理工程师的做法有何不妥?说明理由。
3.指出事件3中监理规划的不正确之处,写出正确做法。
4.事件4中,建设单位的做法是否妥当?说明理由。
5.指出事件5中项目监理机构做法的不妥之处?说明理由。
问题解析:本案例依据《建设工程监理规范》GB T 50319—2013作答。
主要考核监理工作的主要内容、监理规划的编制与审核要求、监理实施细则的编制等内容。
2023年一级造价师之工程造价案例分析(土建+安装)能力提升试卷A卷附答案

2023年一级造价师之工程造价案例分析(土建+安装)能力提升试卷A卷附答案大题(共5题)一、某市为改善越江交通状况,提出以下两个方案。
方案1:在原桥基础上加固、扩建。
该方案预计投资40000万元,建成后可通行20年。
这期间每年需维护费1000万元。
每10年需进行一次大修,每次大修费用为3000万元,运营20年后报废时没有残值。
方案2:拆除原桥,在原址建一座新桥。
该方案预计投资120000万元,建成后可通行60年。
这期间每年需维护费1500万元。
每20年需进行一次大修,每次大修费用为5000万元,运营印年后报废时可回收残值5000万元。
不考虑两方案建设期的差异,基准收益率为6%。
主管部门聘请专家对该桥应具备的功能进行了深入分析,认为从F1、F2、F3、F4、F5共5个方面对功能进行评价。
表2.1是专家采用0—4评分法对5个功能进行评分的部分结果,表2.2是专家对两个方案的5个功能的评分结果。
计算所需系数参见表2.3。
问题在答题纸表2.4中计算各功能的权重(权重计算结果保留三位小数)。
2.列式计算两方案的年费用(计算结果保留两位小数)。
3.若采用价值工程方法对两方案进行评价,分别列式计算两方案的成本指数(以年费用为基础)、功能指数和价值指数,并根据计算结果确定最终应入选的方案(计算结果保留三位小数)。
4.该桥梁未来将通过收取车辆通行费的方式收回投资和维持运营,若预计该桥梁的机动车年通行量不会少于1500万辆,分别列式计算两方案每辆机动车的平均最低收费额(计算结果保留两位小数)。
【答案】(1)(2)方案1的年费用=1000+40000(A/P,6%,20)+3000(P/F,6%,10)(A/P,6%,20)=1000+40000×0.0872+3000×0.5584×0.0872=4634.08(万元)方案2的年费用=1500+120000(A/P,6%,60)+5000(P/F,6%,20)(A/P,6%,60)+5000(P/F,6%,40)(A/P,6%,60)-5000(P/F,6%,60)(A/P,6%,60)=1500+120000×0.0619+5000×0.3118×0.0619+5000×0.0972×0.0 619-5000×0.0303×0.0619=9045.21(万元)或:方案1的年费用=1000+[40000+3000(P/F,6%,10)](A/P,6%,20)=1000+(40000+3000×0.5584)×0.0872=4634.08(万元)方案2的年费用=1500+[120000+5000(P/F,6%,20)+5000(P/F,6%,40)-5000×(P/F,6%,60)]×(A/P,6%,60)=1500+(120000+5000×0.3118+5000×0.0972-5000×0.0303)×0.0619=9045.21(万元)二、背景:某国有资金投资的某重点工程项目计划于2013年7月8日开工,招标人拟采用公开招标方式进行项目施工招标,并委托某具有招标代理和造价咨询资质的招标代理机构编制该项目的标底和最低投标限价。
风险案例分析案例一

案例二:某联合体承建非洲公路项目的失败案例我国某工程联合体(某央企十某省公司)在承建非洲某公路项目时,由于风险管理不当,造成工程严重拖期,亏损严重,同时也影响了中国承包商的声誉.该项目业主是该非洲国政府工程和能源部,出资方为非洲开发银行和该国政府,项目监理是英国监理公司。
在项目实施的四年多时间里,中方遇到了极大的困难,尽管投入了大量的人力、物力,但由于种种原因,合同于2005年7月到期后,实物工程量只完成了35%。
2005年8月,顷目业主和监理工程师不顾中方的反对,单方面启动了延期罚款,金额每天高达5000美元.为了防止国有资产的进一步流失,维护国家和企业的利益,中方承包商在我国驻该国大使馆和经商处的指导和支持下,积极开展外交活动。
2006年2月,业主致函我方承包商同意延长3年工期,不再进行工期罚款,条件是中方必须出具由当地银行开具的约1145万美元的无条件履约保函。
由于保函金额过大,又无任何合同依据,且业主未对涉及工程实施的重大问题做出回复,为了保证公司资金安全,维护我方利益,中方不同意出具该保函,而用中国银行出具的400万美元的保函来代替。
但是,由于政府对该项目的干预往往得不到项目业主的认可,2006年3月,业主在监理工程师和律师的怂恿下,不顾政府高层的调解,无视中方对继续实施本合同所做出的种种努力,以中方不能提供所要求的1145万美元履约保函的名义,致函终止了与中方公司的合同。
针对这种情况,中方公司积极采取措施并委托律师,争取安全、妥善、有秩序地处理好善后事宜,力争把损失降至最低,但最终结果目前尚难预料.该项目的风险主要有:外部风险:项目所在地土地全部为私有,土地征用程序及纠纷问题极其复杂,地主阻工的事件经常发生,当地工会组织活动活跃;当地天气条件恶劣,可施工日很少,一年只有三分之一的可施工日;该国政府对环保有特殊规定,任何取土采沙场和采石场的使用都必须事先进行相关环保评估并最终获得批准方可使用,而政府机构办事效率极低,这些都给项目的实施带来了不小的困难.承包商自身风险:在陌生的环境特别是当地恶劣的天气条件下,中方的施工、管理、人员和工程技术等不能适应于该项目的实施。
2024年一级造价师之工程造价案例分析(土建+安装)通关考试题库带答案解析

2024年一级造价师之工程造价案例分析(土建+安装)通关考试题库带答案解析大题(共12题)一、案例分析三【背景资料】某政府投资的大型建设项目,建设单位委托招标代理机构采用公开招标的方式进行项目施工招标,并委托具有相应资质的工程造价咨询企业编制了招标控制价,招标过程中出现了如下事件。
事件1:资格预审时,招标代理机构审查了各个潜在投标人的专业、技术资格和技术能力。
事件2:由招标代理机构组建评标委员会,由技术专家2人、经济专家3人、招标人代表1人、该项目主管部门主要负责人组成。
事件3:为了加大竞争,以减少可能的围标而导致的竞争的不足,招标人要求招标代理机构将招标控制价再下浮10%,并仅公布招标控制价总价。
事件4:评标过程中,评标委员会发现某投标人的投标报价明显低于其他投标人的投标报价。
事件5:评标结束后,评标委员会向招标人提交了书面评标报告和中标候选人名单。
评标委员会成员王某对评标结果有异议,拒绝在评标报告上签字,但又不提出书面意见。
事件6:招标人向中标人发出中标通知书后,为了降低造价,向中标人提出降价的要求,双方通过多次谈判,在中标通知书发出之日后第32天签订书面合同,合同价比中标价降低2%,招标人在与中标人签订合同3周后,退还了未中标的其他投标人的投标保证金。
【问题】1.说明事件1中招标代理机构在资格预审时还应审查哪些内容。
2.指出事件2中,招标代理机构行为的不妥之处,并说明理由。
3.指出事件3中,招标人行为的不妥之处,并说明理由。
【答案】1.事件1中招标代理机构还应审查的内容:资格审查应主要审查潜在投标人或者投标人是否符合下列条件:①具有独立订立合同的权利;②具有履行合同的能力,包括专业、技术资格和能力,资金、设备和其他物质设施状况,管理能力,经验、信誉和相应的从业人员;③没有处于被责令停业,投标资格被取消,财产被接管、冻结,破产状态;④在最近三年内没有骗取中标和严重违约及重大工程质量问题;⑤法律、行政法规规定的其他资格条件。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
委托
定义委托的语法和定义方法比较相似,只是比方法多了一个关键字delegate,我们都知道方法就是将类型参数化,所谓的类型参数化就是说该方法接受一个参数,而该参数是某种类型的参数,比如int、string等等;而委托是将方法参数化,说了上面的那个类型参数化之后,相信你也能猜到方法参数化的意思了,对,就是将方法作为一个参数传到一个委托中。
首先来看看声明委托的语句:
public deletate void MyDelegate();
public:访问修饰符delegate:关键字void:返回类型MyDelegate:委托名称( ):参数列表
看到声明大家会想了,为什么该委托的返回值,参数列表要这样的,我不能返回一个string,一个int么?我不能给委托加几个参数么?答案是:当然可以,但委托的定义是相对于方法来说的,因为得你的委托最终是要来注册方法的,而你的方法是具有某种签名的,所以你要给怎样签名的方法来声明一个委托,该委托就要和该方法具有同等的签名,就类似于你用一个int 类型的变量去接受一个string类型的值,显然是不行的(个人理解)....
* 委托只要定义就可以了,我们并不需要关心他的实现
委托的使用
注册委托有两种方法:
第一种:直接将方法赋值[=]或者用“+=”给一个委托==>委托名=[+=] 方法名
第二种:委托本质也是一个类,只是一个特殊的类,所以我们也可以实例化一个委托对象通过委托构造函数来注册委托==》委托名对象名= new 委托名(方法名)
了解了委托的声明和使用,我们就可以来看小例子来加深理解了
首先看看界面:
界面上就是简单的四个按钮两个属于委托,两个属于事件,都是一个用来执行,一个用来干扰,以便于来理解委托事件
然后看后台代码,首先我定义了一个Test类,声明委托,实例了委托,还声明了事件,写了个方法用来触发事件,代码如下:
1public class Test
2 {
3//声明一个委托
4public delegate void MyDelegate();
5
6//创建一个委托实例
7public MyDelegate myDel;
8//声明一个事件
9public event MyDelegate EventMyDel;
10
11//事件触发机制(必须和事件在同一个类中) 外界无法直接用EventMyDel()来触发事件
12public void DoEventMyDel()
13 {
14 EventMyDel();
15 }
16 }
然后为了方便测试,我还定义了三个方法在Form1类,代码如下:
1//方法A
2public void Fun_A()
3 {
4 MessageBox.Show("A 方法触发了");
5 }
6
7//方法B
8public void Fun_B()
9 {
10 MessageBox.Show("B 方法触发了");
11 }
12//方法C
13public void Fun_C()
14 {
15 MessageBox.Show("C 方法触发了");
16 }
然后在页面Page_Load时注册委托,将方法A和方法B挂载到委托链上,代码如下:
1//页面载入事件
2private void Form1_Load(object sender, EventArgs e)
3 {
4
5//注册委托(挂载方法)
6 test.myDel += Fun_A;
7 test.myDel += Fun_B;
8
9//注册事件(挂载方法)
10//test.EventMyDel += Fun_A;
11//test.EventMyDel += Fun_B;
12 }
然后给[执行委托]按钮添加Click事件,代码如下:
1//执行委托
2private void button1_Click(object sender, EventArgs e)
3 {
4//执行委托链中的方法
5 test.myDel();
6 }
显示效果:
说明没问题,方法都挂载到委托链上了,但是如果这时候我们来进行下干扰呢?各位想想看,结果会是怎么样了呢,先贴上干扰的代码:
1//委托干扰事件
2private void button2_Click(object sender, EventArgs e)
3 {
4//给委托赋 null 值
5 test.myDel = null;
6
7//给委托挂载上C方法
8 test.myDel += Fun_C;
9
其实这里的所谓的“干扰”,就是给以存在的委托链中附加了一个null的对象,然后在给委托附加C方法,此时按如下步骤运行程序:
看看结果会怎么样,哎,发现就只有C方法被触发了:
大家想想,为什么会这样呢??为什么A,B方法不执行了呢??这是因为原来的委托链是已经挂载了A,B两个方法了,但这时突然被干扰了下,又附加了一个null对象,破坏了原有的委托链了,但这又说明了什么呢?因为委托本质就是一个类,它包含一对有用的字段,第一个字段是存放该对象的引用,第二个字段存放一个方法的指针,所以我们可以把委托理解成一个指向函数的指针,当一个方法作为参数赋值给一个委托的时候,该委托就指向了该方法的首地址,即方法名,所以当我们给委托注册A,B两个方法,该委托就同时指向了A,B两个方法的首地址,但这是又突然给委托赋值了,且赋值了一个null对象,注意这里用的是赋值符号[=],这就是说让该委托清除原有的指针指向,此时指向一个null,之后又给委托注册了C方法,所以此时委托即指向null,又指向了C方法的首地址,这就是为什么运行时只会看到C方法被触发的原因了!
那就是说现在的委托变得不安全了,哪天一个项目中给委托注册了很多方法,但突然被干扰了下,前面的注册都失效了,那我们前面做的工作不是白做了,那有没有办法可以防止这种干扰呢??答案是当然有,相信聪明的你也应该猜到了,这时就是事件该上场的时候了。
事件
事件就是一个特殊的委托,委托和事件就类似于字段和属性的关系,事件是对委托做了一个封装(这是个人理解)
先看看声明一个事件:
public Event MyDelegate EventMyDel;
public:访问修饰符 Event:关键字MyDelegate:委托EventMyDel:事件名称
接下来让我们来看看我们用反编译工具来反编译下该项目的exe可执行文件,看看当我们给事件注册上方法时,事件内部在做什么,附上反编译代码:
从反编译中就可以充分看出,事件的本质就是一个委托,它的内部仍然是用一个委托,该委托的名称的方法就只有和事件名首字母的大小写不同而已,该委托来负责接收事件,然后通过add,remove方法来实现委托的注册和删除,即当我们给委托注册一个方法时,内部就调用add方法,通过bine()方法来实现将方法附加到委托链上,当我们删除委托链上的一个方法时,即内部调用remove方法,通过Delegate.Remove()方法,将该方法从委托链上移除,所以通过反编译工具,我们就可以清楚的知道事件内部的实现代码了。
1//页面载入事件
2private void Form1_Load(object sender, EventArgs e)
3 {
4
5////注册委托(挂载事件)
6//test.myDel += Fun_A;
7//test.myDel += Fun_B;
8
9//注册事件
10 test.EventMyDel += Fun_A;
11 test.EventMyDel += Fun_B;
12 }
然后我们点击[执行事件]按钮.贴上代码:
1//执行事件
2private void button3_Click(object sender, EventArgs e)
3 {
4//执行事件触发方法
5 test.DoEventMyDel();
6 }
看看效果,如图:
和刚开始的委托一样,没有问题,两个方法都触发了,接下来再让我们来实施干扰,附上干扰代码:
//干扰事件
2private void button4_Click(object sender, EventArgs e)
3 {
4//注册干扰事件
5 test.EventMyDel = null;
慢着,,此时编译报错了,报了什么错呢,,我们看看:
说明了什么,,说明我们没法对事件用赋值[=]号来进行注册,这就避免了破坏直接委托链的指针指向了,,但你会想了,那如果我们用附加[+=]上一个null对象呢?会干扰到么??好的,,我们实施下,修改代码,如下:
//干扰事件
2private void button4_Click(object sender, EventArgs e)
3 {
4//注册干扰事件
5 test.EventMyDel += null;
6
7//注册C方法
8 test.EventMyDel += Fun_C;
9
10 }
运行如图:
所以没有问题,即使你附加了一个null对象,三个方法照样依次执行了,,这就是事件的封装效果了.......。