关于C++oprator的问题,求高人

ccjjyy 2010-12-25 10:01:38
operator SOCKADDR()
{ return *((LPSOCKADDR) this); }
operator LPSOCKADDR()
{ return (LPSOCKADDR) this; }
operator LPSOCKADDR_IN()
{ return (LPSOCKADDR_IN) this; }

成员函数里面这些是什么意思?是重载吗,重载的话不是重载运算符吗,这边是重载什么?
...全文
153 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
pengzhixi 2010-12-25
  • 打赏
  • 举报
回复
重载的类型转换操作符

struct Test{
int i;
operator int(){ retrun i;}
};
羽飞 2010-12-25
  • 打赏
  • 举报
回复
类型转换,使用时可以默认转换成另一个类型的变量
  • 打赏
  • 举报
回复
简化一点:
class Tett{public:int operator();}; //可理解为重载了操作符()

int Test::operator (){return 10;}

Test t;
int x = t();//可理解为对象具有了函数的功能,书上叫对象函数

实际使用中一般用于对象转换

Qyee 2010-12-25
  • 打赏
  • 举报
回复
类型转换运算符
cd2108006026 2010-12-25
  • 打赏
  • 举报
回复
类型转换运算符
也就是说,你这个类对象,可以作为SOCKADDR等类型使用
小猴饲养员 2010-12-25
  • 打赏
  • 举报
回复
没电了,下次看
luciferisnotsatan 2010-12-25
  • 打赏
  • 举报
回复
重载转换运算符

lz可以看下 thinking in c++
eastcowboy 2010-12-25
  • 打赏
  • 举报
回复
类型转换运算符。

代码:
operator SOCKADDR()
{
// ...
}

意思就是这个类的对象可以转化为一个SOCKADDR的对象。转化时会调用括号里面的代码,用于生成一个SOCKADDR。
PG 2010-12-25
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 hukui161 的回复:]
类型转换。
[/Quote]
......
hukui161 2010-12-25
  • 打赏
  • 举报
回复
类型转换。
taodm 2010-12-25
  • 打赏
  • 举报
回复
楼主还是买本《C++ Primer》补补基础吧。

65,210

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧