3_使用指针对象(Using Object Pointer)
2024-08-26 03:27:17
类的成员函数有两种调用方式,一种是由对象调用,另一种是由对象指针调用。其中,对象调用的方式为objectName.memberFunctionName(parameters),而对象指针调用的方式为objectPointer->memberFunctionName(parameters)。
对象指针调用objectPointer->memberFunctionName(parameters)等价于先将对象指针解引用,然后使用对象调用的方式调用成员函数。即(*objectPointer).memberFunctionName(parameters),其中objectPointer为对象指针。
以上,要注意的是操作符的优先级:如果对象指针的间接访问操作不加括号,会陷阱行点操作运算,从而导致编译失败,因为指针进行点操作是非法的。
//=============================================
//对象指针使用成员函数
//============================================= #include <iostream>
#include <iomanip>
using namespace std; /**
*类定义体
*/
class Date{
private:
int year,month,day;
public:
//在类定义体内定义成员函数,不需要在函数名前冠以类名
void set(int y,int m,int d)
{
year = y;
month = m;
day = d;
};
bool isLeapYear();
void print();
}; //使用日期类
int main()
{
Date* dp = new Date;
dp->set(,,);
if((*dp).isLeapYear())
{
dp->print();
}
return ;
} //成员函数类定义体外定义 inline bool Date::isLeapYear() //显示内联
{
return (year%== && year%!=)||(year%==);
} void Date::print()
{
cout<<setfill('');
cout<<setw()<<year<<'-'<<setw()<<month<<'-'<<setw()<<day<<'\n';
cout<<setfill(' ');
}
最新文章
- DNS-2
- 转载:Solr的自动完成实现方式(第一部分:facet方式)
- hive的内部表与外部表创建
- 【原创】只用 HTML / CSS 画出一把 UKULELE(夏威夷四弦吉他)
- GAC(Global Assembly Cache)注册/卸载 dll
- css控制内容显示,自动加";...";
- React学习笔记(二) 组件状态
- wifi的UI控制。打不开UI
- CSS制作波浪线
- JAVA项目中文件重命名方式
- MTK之DrvGen的使用
- 关于js中操作数组的一些方法
- Intel Digital Innovation Industry Summit(2018.08.17)
- Base64图片编码原理,base64图片工具介绍,图片在线转换Base64
- photoshop打造超酷炫火焰人像效果
- Service Fabric &mdash;&mdash; Actor / Stateless Service 概念
- python2 使用matplotlib
- LUOGU 1440
- 2018年暑假ACM个人训练题9(动态规划)解题报告
- CAD安装失败怎样卸载CAD 2017?错误提示某些产品无法安装
热门文章
- Shell脚本中使用function(函数)示例
- use zlib lib to compress or decompress file
- BZOJ 4503: 两个串 [FFT]
- 51Nod 欢乐手速场1 A Pinball[DP 线段树]
- Newtonsoft.Json 操作 JSON 字符串
- 2018/1/28 RocketMq学习笔记
- new day
- 使用Dism备份和全新恢复系统
- 启动MySql提示:The server quit without updating PID file(…)失败
- 分布式代码管理系统Git实践