易码技术论坛

 找回密码
 加入易码
搜索
查看: 88842|回复: 3

如何在C++一个类里面调用另一个类的非默认构造函数

[复制链接]
发表于 2005-9-21 09:41:00 | 显示全部楼层
区别不同的构造函数只能靠函数参数了.

调用时也一样,譬如   A a(Type x...);
 楼主| 发表于 2005-9-21 12:30:00 | 显示全部楼层
构造函数实在实例化对象的时候自动调用的,但是它一旦作为了别的类的成员,那怎么确定它调用的构造函数<BR>如果<BR>class B{<BR>    A a(params……);<BR>};<BR>貌似不行。
发表于 2005-9-21 14:21:00 | 显示全部楼层
2楼已经说明白了啊。重载的函数需要靠参数来区别。

实例化A的对象时,赋给符合你要求的构造函数的参数就可以。

比如Class A{

A(int p1){};

A(int p1,int p2){};

}

Class B{

A m_a1;

A m_a2;

B()

{

m_a1=new A(10);

m_a2=new A(5,5);

}

}

5047_14722_2067.rar

17 KB, 下载次数: 355

 楼主| 发表于 2005-9-20 19:12:10 | 显示全部楼层 |阅读模式
我有一个 class A 它有一个默认的构造函数和若干个重载后构造函数,当它的对象作为其它类的成员的时候,例如<br>class B{<br>public:<br>    A a;<br>    ……<br>};<br>如何对a调用那些非默认的构造函数
您需要登录后才可以回帖 登录 | 加入易码

本版积分规则

Archiver|手机版|小黑屋|EMAX Studio

GMT+8, 2025-8-24 04:11 , Processed in 0.011200 second(s), 21 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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