*运算符,->运算符重载与智能指针
来源:互联网 发布:ios 判断app网络权限 编辑:程序博客网 时间:2024/06/05 14:11
class person
{
public:
int age;
string name;
public:
person()
{
age = 30;
name = "vinny";
}
void printperson()
{
cout << age << " " << name << endl;
}
};
class pointer//智能指针
{
public:
person* ppointer;
pointer(person* per)
{
ppointer = per;
}
person* operator->()//重载->
{
return ppointer;
}
person& operator*()//重载*
{
return *ppointer;
}
~pointer()
{
if (ppointer != NULL)
{
delete ppointer;
ppointer = NULL;
}
}
};
void test()
{
pointer p(new person);
p->printperson();//重载->运算符
cout << (*p).age << endl;//重载*运算符
}
{
public:
int age;
string name;
public:
person()
{
age = 30;
name = "vinny";
}
void printperson()
{
cout << age << " " << name << endl;
}
};
class pointer//智能指针
{
public:
person* ppointer;
pointer(person* per)
{
ppointer = per;
}
person* operator->()//重载->
{
return ppointer;
}
person& operator*()//重载*
{
return *ppointer;
}
~pointer()
{
if (ppointer != NULL)
{
delete ppointer;
ppointer = NULL;
}
}
};
void test()
{
pointer p(new person);
p->printperson();//重载->运算符
cout << (*p).age << endl;//重载*运算符
}
0 0
- *运算符,->运算符重载与智能指针
- c++学习笔记之运算符重载与智能指针
- C++运算符重载(10) - 智能指针
- 重载指针运算符
- ++与--运算符重载
- C/C++:智能指针原理(运算符重载)、使用auto_ptr<A>
- 复数与运算符重载
- 模板与重载运算符
- 重载运算符解决指针悬挂问题
- 从运算符重载到指针悬挂
- 函数指针作参数&运算符重载
- 类型转换运算符和指针运算符的重载
- C++重载函数与重载运算符
- 函数重载与运算符重载
- 函数重载与运算符重载
- 重载算术运算符与重载赋值运算符
- C++智能指针与重载操作符
- 指针操作符与运算
- hibernate中的cascade属性
- hdu 3660 Realtime Status(树形dp)
- 【MySQL】20个经典面试题,全部答对月薪10k+
- Oracle条件语句
- 线性表实现之多项式
- *运算符,->运算符重载与智能指针
- Unity之Tango运动跟踪(二)
- js数据结构与算法----栈与队列
- 图片上传(Base64)
- hibernate中的cascade属性
- 常见的一些C#开源框架或者开源项目
- 链表操作一【合并链表】【严蔚敏】
- 天数计算
- win10系统下配置免安装MySQL【可以生成data文件夹,亲测】