首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在C#中,"Customer cust = new Customer();“做什么?

在C#中,"Customer cust = new Customer();“做什么?
EN

Stack Overflow用户
提问于 2009-07-28 23:45:34
回答 12查看 5.5K关注 0票数 6
代码语言:javascript
复制
Customer cust = new Customer();

Customer是一个类。cust是指定的名称。我不确定Customer()是做什么的。

这一行是做什么的?我们为什么需要它?使用CustomerCustomer()是不是有点重复?

EN

回答 12

Stack Overflow用户

回答已采纳

发布于 2009-07-28 23:47:09

它声明一个客户,然后对其进行初始化。

代码语言:javascript
复制
Customer cust; //declares a new variable of Customer type

cust = new Customer(); //Initializes that variable to a new Customer().

new创建了实际的对象,cust hold是对它的引用。

空括号指示没有向Customer对象的构造传递任何参数,否则括号内将有一个逗号分隔的参数列表。

票数 23
EN

Stack Overflow用户

发布于 2009-07-28 23:48:10

它创建一个新的Customer()实例,并将对新创建的对象的引用分配给变量cust

如果您想要删除重复,并且您使用的是C# 3.0或更高版本,并且它是一个局部变量,则可以使用:

代码语言:javascript
复制
var cust = new Customer();

这具有完全相同的含义-它仍然是静态类型的,即变量cust仍然是非常明确的Customer类型。

在这种情况下,它碰巧是重复的,但两个Customer位是完全分开的。第一个参数是变量的类型,第二个参数用于说明要调用哪个构造函数。它们可能是不同的类型:

代码语言:javascript
复制
Customer cust = new ValuedCustomer();
IClient cust = new Customer();
object cust = new Customer();

这只是因为您创建了一个实例,其类型与发生重复的变量的类型完全相同。

票数 49
EN

Stack Overflow用户

发布于 2009-07-28 23:47:55

Customer()是Customer类的构造函数方法。如果你被重复所困扰,你可以使用隐式变量声明:

var cust =新客户();

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1197349

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档