一个小问题?

guoxiny 2003-05-10 12:35:06
在C#中,所有类型的基类都是object,问题如下:
我有一个类
class myclass
{
}

static void main()
{
myclass m = new myclass();
int i = 0;
}

如果我的对象m不用new myclass()创建,调用成员函数就会出错;但是对于内置类型i却可以直接使用,而不需要使用new创建。可是从本质上来说myclass和int都是object的子类,为什么在使用时却有如此的差别?是否.Net框架在内部进行了处理?如果是,那么这个处理过程是怎么样的呢?
...全文
35 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
jiezhi 2003-05-10
  • 打赏
  • 举报
回复
基础问题。
看看书吧
hwndhwnd 2003-05-10
  • 打赏
  • 举报
回复
那个类是建立在托管堆上的,所以要new。
int是建立在栈上的。所以不用new。
.net有值类型和引用类型。
zhenbe 2003-05-10
  • 打赏
  • 举报
回复
成员函数分static 和 非static ,如果你的myclass 有static 成员函数,当然也不用new 了。对于myclass是用户自定义的类型,属于引用类型,如果你不new一个的话,像这样
myclass m; //1
m.func(); //2
在2处设一下断点。你就会发现m=null;
当然出错的啦!
aaxu 2003-05-10
  • 打赏
  • 举报
回复
静态的(Static)不需要创建对象。
jts20021982 2003-05-10
  • 打赏
  • 举报
回复
static
Cnapollo 2003-05-10
  • 打赏
  • 举报
回复
值类型和引用类型。

111,097

社区成员

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

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

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