| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2283 人关注过本帖
标题:析构函数可以是内联函数吗?
只看楼主 加入收藏
lindayanglong
Rank: 1
等 级:新手上路
帖 子:86
专家分:0
注 册:2008-3-9
收藏
 问题点数:0 回复次数:9 
析构函数可以是内联函数吗?
析构函数可以是内联函数吗?书上说是的,还举例了,可是我按他写的出现了错误,大家看看该怎么改?
#include<iostream>
using namespace std;
class A
{
public:
    void foo()
    {cout<<"A"<<endl;}
    ~A();
}
inline A::~A()
{cout<<"inline";}

int main()
{
    A *p=new A();
    p->foo();
    delete p;
    return 0;
}
搜索更多相关主题的帖子: 内联 函数 
2008-09-10 17:38
守鹤
Rank: 4
来 自:山東臨沂
等 级:贵宾
威 望:12
帖 子:337
专家分:0
注 册:2008-6-20
收藏
得分:0 
类定义时,结束用分号
class   类名
{  };
2008-09-10 18:22
blueboy82006
Rank: 5Rank: 5
来 自:幻想世界
等 级:贵宾
威 望:16
帖 子:1227
专家分:57
注 册:2007-7-23
收藏
得分:0 
你这样写就行:
#include<iostream>
using namespace std;
class A
{
public:
    void foo()
    {cout<<"A"<<endl;}
   inline ~A()
   {cout<<"inline";}
};

int main()
{
    A *p=new A();
    p->foo();
    delete p;
    return 0;
}

2008-09-10 18:23
blueboy82006
Rank: 5Rank: 5
来 自:幻想世界
等 级:贵宾
威 望:16
帖 子:1227
专家分:57
注 册:2007-7-23
收藏
得分:0 
二楼说得很对啊,你原来那个没什么问题啊...
只是少个分号...

2008-09-10 18:25
newyj
Rank: 2
等 级:新手上路
威 望:3
帖 子:542
专家分:0
注 册:2008-1-4
收藏
得分:0 
好象前面 加不加 inline 没有太大的作用
编译器会自己选择的吧
2008-09-10 20:07
blueboy82006
Rank: 5Rank: 5
来 自:幻想世界
等 级:贵宾
威 望:16
帖 子:1227
专家分:57
注 册:2007-7-23
收藏
得分:0 
[bo][un]newyj[/un] 在 2008-9-10 20:07 的发言:[/bo]

好象前面 加不加 inline 没有太大的作用
编译器会自己选择的吧


应该是的...

2008-09-10 20:19
zzt_428
Rank: 2
来 自:南京师范大学
等 级:论坛游民
威 望:2
帖 子:243
专家分:22
注 册:2008-7-6
收藏
得分:0 
回复
当然可以!!
比如说
using std::cout;
class Time
{
   pulibc:
     //....
    inline ~Time()
    {
        cout << "destructor called.\n";
    }
};

内联函数一般适合用于函数体较小的,没有循环或switch的语句.可以提高执行效率.如果函数执行时间比较长,即使你声明为内联的,,编译器也当做是常规函数.析构函数一般不声明为内联的.
2008-09-10 20:36
尹迪
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2008-9-9
收藏
得分:0 
2008-09-10 20:54
p1s
Rank: 4
等 级:贵宾
威 望:10
帖 子:454
专家分:3
注 册:2005-11-4
收藏
得分:0 
inline只是我们给编译器的建议,未必会真的就内联了。
2008-09-11 13:10
明天更好山鹰
Rank: 2
等 级:论坛游民
威 望:1
帖 子:23
专家分:30
注 册:2013-3-11
收藏
得分:0 
析构函数一般不声明为内联的
2013-04-11 21:25
快速回复:析构函数可以是内联函数吗?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.012561 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved