加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 匿名实例化语法 – 好还是坏?

发布时间:2020-12-15 19:41:20 所属栏目:百科 来源:网络整理
导读:对于我只使用一次实例化对象的快速任务,我知道我可以执行以下操作: int FooBarResult = (new Foo()).Bar(); 我说这对于非一次性物品是完全可以接受的,并且比替代物更具可读性: Foo MyOnceUsedFoo = new Foo();int FooBarResult = MyOnceUsedFoo.Bar(); 你
对于我只使用一次实例化对象的快速任务,我知道我可以执行以下操作:

int FooBarResult = (new Foo()).Bar();

我说这对于非一次性物品是完全可以接受的,并且比替代物更具可读性:

Foo MyOnceUsedFoo = new Foo();
int FooBarResult = MyOnceUsedFoo.Bar();

你用哪个,为什么?
你会在生产应用程序中使用这种类型的匿名实例化吗?
偏好:带括号“(new Foo()).Bar();”或没有“new Foo().Bar();”?

(编辑从Random类抽象问题)

解决方法

关于随机数的旁注:事实上,不,你的具体例子(新的Random().Next(0,100))是完全不可接受的.生成的随机数远非均匀.

除此之外,一般来说,两者之间没有太大差异.在任何一种情况下,编译器很可能会生成完全相同的代码.您应该使用最易读的案例(长语句可能会损害可读性;更多代码也会这样做,因此您必须在特定情况下进行权衡).

顺便说一句,如果你选择单行情况,省略不必要的parens(新的MyObject().方法()会这样做).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读