游戏开发论坛

 找回密码
 立即注册
搜索
查看: 3252|回复: 6

构造函数在什么时候被系统自动调用?大家请看看我的想

[复制链接]

39

主题

102

帖子

102

积分

注册会员

Rank: 2

积分
102
发表于 2005-8-21 09:00:00 | 显示全部楼层 |阅读模式
Class A
{

A()
{
构造函数内容


其余省略...........
};



那么构造函数是不是:

A a;    或是  A*  a = new A();  的时候被调用啊!请指教一二。

71

主题

1330

帖子

2585

积分

金牌会员

Rank: 6Rank: 6

积分
2585
发表于 2005-8-21 15:32:00 | 显示全部楼层

Re:构造函数在什么时候被系统自动调用?大家请看看我的

基本正确

39

主题

102

帖子

102

积分

注册会员

Rank: 2

积分
102
 楼主| 发表于 2005-8-21 18:35:00 | 显示全部楼层

Re:构造函数在什么时候被系统自动调用?大家请看看我的

那不定义类的具体具体对象的时候构造和析构函数就永远不调用吗?

3

主题

130

帖子

130

积分

注册会员

Rank: 2

积分
130
发表于 2005-8-21 19:17:00 | 显示全部楼层

Re:构造函数在什么时候被系统自动调用?大家请看看我的

你不定义类的具体对象,就不会有任何对象的创建,自然也不会发生构造函数的自动调用了。

请问你,如果你的类里没有包含任何对象,哪你定义的类还有什么用处吗?

18

主题

279

帖子

279

积分

中级会员

Rank: 3Rank: 3

积分
279
QQ
发表于 2005-8-21 21:13:00 | 显示全部楼层

Re:构造函数在什么时候被系统自动调用?大家请看看我的

建议楼主看一下《Inside the C++ Object Model》
  生成对象的时候通常需要调用构造函数,或者应该说一般情况下只有调用了构造函数才能生成对象(发生异常和直接内存拷贝除外)。
  但是只要你愿意,在别的地方也可以调用构造函数。

6

主题

95

帖子

103

积分

注册会员

Rank: 2

积分
103
发表于 2005-8-22 13:04:00 | 显示全部楼层

Re:构造函数在什么时候被系统自动调用?大家请看看我的

不定义,编译器会生成默认构造函数

39

主题

102

帖子

102

积分

注册会员

Rank: 2

积分
102
 楼主| 发表于 2005-8-23 11:03:00 | 显示全部楼层

Re:构造函数在什么时候被系统自动调用?大家请看看我的

谢谢大家的解释,终于明白了。感谢!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-12-27 13:37

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表