C++构造函数和析构函数

1.构造函数

  主要用于对类的private变量初始化 

 1 stock::stock(const std::string &co, long n, double pr)
 2 {
 3     company = co;
 4     shares = n;
 5     share_val = pr;
 6 }
 7 
 8 stock::stock()
 9 {
10     shares = 1;
11     company = "no name";
12     share_val = 1;
13     total_val = 1;

 

 

  使用:

stock name1= {"name1", 10, 2};  //调用带参数的构造函数 C++11
stock name1("name1", 10, 2);
stock *name1 = new stock( "name1", 10, 2 );
stock name1 = stock( "name1", 10, 2 );

stock name2;   //自动调用不带参数的构造函数

 

 

 

2.析构函数

  对象过期后,会调用析构函数。什么时候会过期,应该跟作用域有关,没有实际测试。

stock::~stock()
{
    std::cout << "bye, " << company << "\n";
}

  

   使用:

  

int main()
{
    {
        stock name1= {"name1", 10, 2};
        stock name2; 
    }
    while(1);
}
运行结果为:bye,name1
      bye,no name
注意:上面加了{},如果没有,将不会有显示,因为没有大括号,代码块为整个main();

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值