编程资料集中营
 | 网站首页 | 文章中心 | 编程资料2 | 软件下载 | BT下载 | 八卦星闻 | 音乐在线 | 在线游戏 | 免费电影 | 进入问吧 | 
[FxCop.设计规则]6. 避免使用输出参数,6.避免使用输出参数原文引用:AvoidoutparametersTypeName:AvoidOutParametersCheckId:CA1021Category:Microsoft.DesignMessageLevel:WarningCertainty:50%BreakingChange:BreakingCause:Apublicorprotectedm,
您现在的位置: 编程资料,学习资料,c,c++,vc,vc++,java,jsp,j2ee,j2me,asp,php >> 文章中心 >> .NET 专区 >> NET 技术 >> 文章正文
【字体:
[FxCop.设计规则]6. 避免使用输出参数   进入问吧

本站地址:http://www.bajiao123.com

作者:admin    文章来源:本站    点击数:    更新时间:2007-6-10    

[FxCop.设计规则]6. 避免使用输出参数

 

 

引起的原因:

一个公共类型包含一个含有输出(out)参数的公共或保护型方法

描述:

使用引用类型参数,需要了解值类型和引用类型的差别,同时,使用这个方法将会有多个返回值。输出型参数(out)和引用型参数(ref)之间的区别并不被广泛了解。

 

 

当一个引用类型被当作引用型参数传递进一个方法,这个方法将使用这个参数返回一个不同的实例对象(将一个引用类型当作引用型参数传递,相当于使用一个双重指针、指向指针的指针或双重间接引用)。使用默认的调用方式(传值调用),方法已经收到一个对象的引用(指针),指针(而不是指向的对象实例)将被作为传值调用送入方法。意味着方法将不能修改这个指针指向一个新的对象实例,但是可以改变指针所指对象的内容。对于大多数应用,这种传值参数已经足够用了。

 

 

如果一个方法需要返回不同的对象实例,使用方法的返回值就可以了。类似System.String类,其中的很多方法都都返回一个新的字符串实例,这种模式的好处是,调用方法的人可以决定是否将原始对象丢弃掉。

 

 

当一个返回值被经常的使用并且开销很大时,正确的应用outref参数需要中级设计和编码能力。适合一般用户的库架构设计应该不期望用户掌握如何工作在outref参数。

修复:

如果只有一个输出类型的参数,并且是之类型,可以将这个参数作为这个方法的返回值。如果一个方法必须返回多个值,重新设计这个方法返回一个单个的实例代替这些值。

例外:

忽略这条规则是安全的。但是这条规则可能会影响可用性。

 << 上一页  [11] [12] [13] [14] [15] 下一页

   

进入问吧

本站地址:http://www.bajiao123.com

文章录入:admin    责任编辑:admin 
高级搜索
编程资料集中营