“高分”求解“简单问题”!!!实例??new一个数组不算实例?

quickmove 2004-12-14 05:05:35
我的示例代码如下,如此简单的代码通不过,跪求!:
class Woman
{
public Woman(){}

public Baby[] BuildBaby()
{
Baby[] babys = new Baby[2]; // 此处是不是已经实例了?
for(int i = 0; i < 2; i++)
{
babys[i].Name = "老" + i.ToString(); // 运行到此处会提示:"未将对象实例"
babys[i].Sex = (i==1)?"男":"女";
}
return babys;
}
}

class Baby
{
public Baby(){}

private string _name;
private string _sex;

public string Name
{
get{return _name;}
set{_name = value;}
}

public string Sex
{
get{return _sex;}
set{_sex = value;}
}

}
...全文
88 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
quickmove 2004-12-14
  • 打赏
  • 举报
回复
想不到基础问题不过关。-_-!

辞职回家倒马桶去了。
jimh 2004-12-14
  • 打赏
  • 举报
回复
基础问题,楼主还是多看书吧。
brightheroes 2004-12-14
  • 打赏
  • 举报
回复
看来实体对象不好了?会耗费很大很大的内存。
---》
引用类型的实例存放在托管堆上
托管堆栈上,仅仅是一个地址,就是引用

.NET有垃圾回收机制来保证无用内存的收集
这个你不用担心
事实上,值类型远远不如引用类型多呀
jszikun 2004-12-14
  • 打赏
  • 举报
回复
对!
brightheroes 2004-12-14
  • 打赏
  • 举报
回复
sorry


int[] ints = int[3];
-->
int[] ints = new int[3];
quickmove 2004-12-14
  • 打赏
  • 举报
回复
看来实体对象不好了?会耗费很大很大的内存。
brightheroes 2004-12-14
  • 打赏
  • 举报
回复
值类型和引用类型是不同的
值类型的,不用去new,默认是有初始值的
比如int[] ints = int[3];
Console.WriteLine(int[0]);
是没有问题的
但是对于引用类型,就必须要new之后,才可以
Baby[] babys = new Baby[2]{new Baby(),new Baby()};
shiyunlong2000 2004-12-14
  • 打赏
  • 举报
回复
up
brightheroes 2004-12-14
  • 打赏
  • 举报
回复
Baby[] babys = new Baby[2]{new Baby(),new Baby()};

guoandzhong 2004-12-14
  • 打赏
  • 举报
回复
You JUST claim it, NOT instanced

Baby[] babys = new Baby[2];
babys[0] = new Baby(); //Baby() is Constructor
babys[1] = new Baby(); //Baby() is Constructor
zhlzl 2004-12-14
  • 打赏
  • 举报
回复
Baby[] babys = new Baby[2];只是实例了数组

111,116

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧