| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 644 人关注过本帖
标题:这个类型转换为什么没有返回值类型 ,谢谢!
只看楼主 加入收藏
datoushan
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2010-4-3
结帖率:0
收藏
已结贴  问题点数:10 回复次数:5 
这个类型转换为什么没有返回值类型 ,谢谢!
#include<iostream.h>
class a
{
   
public:
    operator double()const;
    a();
    int dz;
    int mz;
};
a::a()
{
    mz = 1;
    dz = 2;
}

a::operator double()const
{
    return mz * 1.0 / dz;
}

int main()
{
    a zz;
    double s = zz;
    cout<<s<<endl;
    return 0;
}
搜索更多相关主题的帖子: 返回值 类型 
2010-04-25 12:05
lijm1989
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:珠海
等 级:贵宾
威 望:12
帖 子:675
专家分:2844
注 册:2009-10-14
收藏
得分:2 
它的返回值类型就是函数名所代表的类型。即LZ代码中返回的就是double
2010-04-25 12:23
xueyuhanhai
Rank: 4
等 级:业余侠客
帖 子:90
专家分:238
注 册:2010-4-5
收藏
得分:2 
楼主这是类型转换函数里面的内容吧。
我把代码解释了一下,希望楼主满意:
#include<iostream.h>
class a
{
   
public:
    operator double()const;//类型转换函数;把类a类型转换为double类型;因此不写函数类型;
    a();
    int dz;
    int mz;
};
a::a()
{
    mz = 1;
    dz = 2;
}

a::operator double()const
{
    return mz * 1.0 / dz;//返回值是double类型的;
}

int main()
{
    a zz;
    double s = zz;//调用类型转换函数;
    cout<<s<<endl;
    return 0;
}

[ 本帖最后由 xueyuhanhai 于 2010-4-30 18:50 编辑 ]
2010-04-30 18:46
guowei3758
Rank: 2
来 自:陕西咸阳
等 级:论坛游民
帖 子:58
专家分:72
注 册:2010-4-9
收藏
得分:2 
operator double()const;//类型转换函数;把类a类型转换为double类型;因此不写函数类型;
double是要转换的类型
()在这里是干啥的?啥意思?
const在这里是干啥的?啥意思?
还有:应该是
int main()
{
    a zz;
    double s = zz.a;//调用类型转换函数;
    cout<<s<<endl;
    return 0;
} 吧
2010-04-30 19:45
xueyuhanhai
Rank: 4
等 级:业余侠客
帖 子:90
专家分:238
注 册:2010-4-5
收藏
得分:0 
回复 4楼 guowei3758
operator double()const这个函数的意思就是把类a定义的对象转化为double类型。()表示的是函数的参数为空,即没有参数。const 说明是一个常成员函数。
还有:应该是
int main()
{
    a zz;
    double s = zz.a;//调用类型转换函数;
    cout<<s<<endl;
    return 0;
} 吧
zz是一个对象,而a是一个类啊。“.”是成员运算符啊。zz.a错误的 代码啊 。

[ 本帖最后由 xueyuhanhai 于 2010-5-1 13:06 编辑 ]
2010-04-30 20:53
南国利剑
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:29
帖 子:1165
专家分:3536
注 册:2010-4-12
收藏
得分:2 
回复 4楼 guowei3758
我认为楼主给出的代码没有问题

南国利剑
2010-05-01 08:51
快速回复:这个类型转换为什么没有返回值类型 ,谢谢!
数据加载中...
 
   



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

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