C++学习之友元函数(二)
来源:互联网 发布:网络兼职怎么找 编辑:程序博客网 时间:2024/06/04 18:03
上篇笔记中对于友元成员函数简单介绍一下结构,本篇主要通过另一实例,让类的封装性更好,编程走起来。程序中定义了两个类time,match。
time.h头文件
#ifndef TIME_H_INCLUDED#define TIME_H_INCLUDED#include "match.h"//必须包含这个头文件,下面要用到里面的类#include<iostream>using namespace std;class match;//必须包括这个类的声明,告诉编译器你先用着,我后面会定义class time{ friend void match::printTime(time &t);//友元成员函数声明public:time(int hour,int min,int sec);private:int m_iHour;int m_iMinute;int m_iSecond;};#endif // TIME_H_INCLUDED
time.cpp源文件
#include"time.h"//这个文件可以放time类的成员函数定义time::time(int hour,int min,int sec)//构造函数定义{ m_iHour=hour; m_iMinute=min; m_iSecond=sec;}
match.h 头文件
#ifndef MATCH_H_INCLUDED#define MATCH_H_INCLUDED#include<iostream>using namespace std;class time;//必须加这个声明class match{public: void printTime(time &t);};#endif // MATCH_H_INCLUDED
match.cpp源文件
#include"match.h"#include"time.h"#include<iostream>using namespace std;//这个文件可以定义match类的成员函数定义void match::printTime(time &t){ cout<<t.m_iHour<<':'<<t.m_iMinute<<':'<<t.m_iSecond<<endl;}
接下来就是主文件main.cpp
#include"stdlib.h"#include"time.h"#include"match.h"int main(void){ time t(20,56,34);//使用time类定义 match m;//使用match类定义 m.printTime(t);//用match类的printTime函数访问time类的私有成员 system("pause"); return 0;}
这个示例可以很清楚看到文件的相互关系,可以看做友元成员函数的模板了。
阅读全文
1 0
- C++学习之友元函数(二)
- 一步一步学习C++(类)之友元函数
- 友元函数(C++)
- 友元函数(二)
- C++学习之友元函数(一)
- C++学习之友元函数
- 第七周 项目二:成员函数、友元函数、一般函数之区别(初体验)
- 项目二(成员函数,友元函数和一般函数之区别)
- [c++]友元函数
- 【C++】友元函数
- c++:友元函数
- C++:友元函数
- 【C++】友元函数
- (一二二)友元函数
- 友元函数的的使用学习笔记二
- [C++]友元学习
- 第七周任务二之点类(友元函数的应用)
- C++_友元函数
- 机器学习笔记之R语言基础篇3(概率分布1)
- 日期转化
- 收款吧-shouk8 个人微信支付宝网站收款、即时入账、即充宝--收支宝 免签约收款即时到帐辅助系统
- Elasticsearch 安装ik分词器
- 【云计算】mapreduce的理解
- C++学习之友元函数(二)
- web 技术入门概述
- 数据结构(树和二叉树的转换与遍历)
- OpenCV移植到ARM(3)
- 什么是socket
- Mybatis调用存储过程
- Qt之使用Graphics View Framework开发拼图游戏
- tf.nn.embedding_lookup函数
- session工具类