如下函数的返回类型为什么可以是类名MyCopyableClass ?

class MyCopyableClass
{
protected int myInt;
public int ContainedInt
{
get
{
return myInt;
}
set
{
myInt = value;
}
}
public MyCopyableClass GetCopy()
{
return (MyCopyableClass)MemberwiseClone();
}
}
我没有很懂,希望能够讲解的详细一点!非常感谢!

茅侃侃
浏览 80回答 2
2回答

天涯尽头无女友

学过一点C或者C++把,MyCopyableClass是一个实体类,而GetCopy 函数是实例化这个实体类的!也就是创建这个实体类的对象。

回首忆惘然

public MyCopyableClass GetCopy(){return (MyCopyableClass)MemberwiseClone();}分析下这个函数就可以了,一个函数的返回值可以是系统定义的,例如:int、double、string等。也可以是自定义的,比如自定义的类(class),结构(struct)等。这个函数的返回值就是一个你上面自定义的类MyCopyableClass,在return中强制将函数MemberwiseClone()的返回值转变成MyCopyableClass类型。所以返回值就是MyCopyableClass类型的。
打开App,查看更多内容
随时随地看视频慕课网APP