C++之set()函数和get()函数探究
注:这里所说的set()函数和get()函数是指实现某些常用功能的一类函数,“set”和“get”这个函数名是可以随意取的;
由于成员变量我们一般设置为私有,在类外部不能直接访问,所以我们需要设计公有的set()函数和get()函数来访问它;
set()函数是指修改私有成员变量的值的那类函数;
get()函数是指输出,打印,读取私有成员变量的值的那类函数;
所以一般set()函数和get()函数是对应的;
这体现了面向对象编程中的封装性:这里set()函数和get()函数就相当于是对外界提供的一个接口,外界只有通过这种接口才能访问到内部的值。
例:
附上例代码:
//小问学编程
#include<iostream>
using namespace std;class Point
{public:Point()//构造函数{x=0;y=0;}void setX(float _x){x=_x;} //p1.setX(1);void setY(float _y){y=_y;}float getX(){return x;} //cout<<p1.getX()<<endl;float getY(){return y;}void printPoint(){cout<<"("<<x<<","<<y<<")"<<endl;}
private:float x;float y;
};int main()
{Point p1;//声明一个Point的对象p1p1.printPoint();//(0,0)//p1.x=1;错误!//类外不能直接修改类的私有成员p1.setX(1);//只能通过类中提供的公有的成员函数来修改我们的私有成员值//cout<<p1.x<<endl;错误!//类外不能直接访问类的私有成员cout<<p1.getX()<<endl;//只能通过类中提供的公有的成员函数来访问我们的私有成员值p1.printPoint();return 0;
}
运行结果:
C++之set()函数和get()函数探究相关推荐
- OpenCV中initUndistortRectifyMap函数存在bug原因探究
原文首发于公众号「3D视觉工坊」:OpenCV中initUndistortRectifyMap函数存在bug原因探究. 最近在运行如下一段代码时,生成的mapx和mapy有点异常. 代码片段如下: # ...
- JS中Promise函数then的奥秘探究
JS中Promise函数then的奥秘探究 Promise概述 Promise对象是CommonJS工作组提出的一种规范,目的是为异步操作提供统一接口. 那么,什么是Promises? 首先,它是一个 ...
- 探究opencv中的moments函数和HuMoments函数
用过opencv的人都可能接触过轮廓,一般获取轮廓后我们都需要根据轮廓的特征来筛选出我们要找的目标物体,而筛选轮廓的常用办法都是基于轮廓的周长和面积,然后返回目标轮廓的最小矩阵把目标在原图像上标框出来 ...
- NLP:两种方法(自定义函数和封装函数)实现提取两人对话内容(***分隔txt文档),并各自保存为txt文档
NLP:两种方法(自定义函数和封装函数)实现提取两人对话内容(***分隔txt文档),并各自保存为txt文档 目录 问题探究 实现代码 问题探究 实现代码 f=open("niu.txt&q ...
- Javascript 学习笔记 - 函数 - 关于IIFE - 关于函数声明和函数表达式 - 个人总结
一切起源于一段代码(近来学完java基础 开始学习敲一下javascript): var getter = function(){var dayNames=["Sunday",&q ...
- 详解图像形态学操作之图形的腐蚀和膨胀的概念和运算过程,并利用OpenCV的函数erode()和函数dilate()对图像进行腐蚀和膨胀操作
图像形态学中两种最基本的操作就是对图形的腐蚀和膨胀,可以说,形态学中的中高级操作都是建立在这两种操作之上.通过这两种基本的运算可以去除图像中的噪声,分割出独立的区域或者将两个区域连接在一起. 关于图像 ...
- ReLU函数 Vs Sigmoid 函数——XOR问题究竟用那个好
文章目录 前言 先看问题 一.什么是激活函数(输出层中还叫激活函数吗)? 二.各个激活函数适合的情况 1.无激活函数(恒等激活函数) 2.S型曲线,例如 Sigmoid 3.线性整流函数(Rectif ...
- python方差函数_python 中的var()函数和cov函数用法-Go语言中文社区
本文是学习多篇博客总结而得: numpy中var和cov函数求法和MATLAB中var和cov函数求法类似: 首先均值X,样本方差S,样本协方差C 公式分别为: 一. MATLAB和Python中计 ...
- c语言 函数教学反思,函数的概念教学反思范文
函数是高中数学中一个非常重要的内容之一,它贯穿整个高中阶段的数学学习,乃到一生的数学学习过程.下面是小编为大家收集的函数的概念教学反思范文,望大家喜欢. 函数的概念教学反思范文范文一 函数概念的引入一 ...
最新文章
- WIN7下黑苹果懒人版硬盘安装not a HFS partition注意问题
- 在cisco路由器上实现DHCP功能实例
- node 多进程 vs java_node多进程服务器
- Floyd-Warshall算法
- 因子和,因子数,1到n的因子和,1到n的因子数(积性函数)
- python入门学习:4.if语句
- 记录一下Junit测试MongoDB,获取MongoTemplate
- Linux策略路由--原理、配置和应用
- springboot+activiti工作流mybatis冲突解决办法
- 游戏行业数据类丛书_理论丛书:高维数据101
- steam账号被盗找回概率_如何找回忘记的Steam密码
- 知其然,不知其所以然
- 自整理---Redis笔记
- 醉枕江山第五十二章 公主中的公主
- 高等代数 :1 线性方程组的解法
- 吹捧“导师师娘”的论文获得国自然基金资助?中科院和作者都回应了!
- jwt单点登录 和防重放攻击
- 腾讯WeMap,一颗“孢子”的数智化之旅
- modelsim仿真系列之基于ISE的IP核的独立仿真(二)
- 使用CH340串口模块对STM32进行程序下载
热门文章
- MySQL索引类型及创建
- html 读取 vb,VB编程:vb读取textbox控件某一行的方法
- 基于javaweb+jsp+mysql的高校家教管理系统
- 【纪中集训】2019.08.13【省选组】模拟3
- H5页面移动端IOS键盘收起焦点错位
- 控件:DataGridView列类型
- [HTML 5] More about ARIA Relationships
- Cognos开发自定义排序规则的报表和自定义排名报表
- [转载]C#多线程学习(一) 多线程的相关概念
- 从零开始学前端:标签渐变和媒体查询 --- 今天你学习了吗?(CSS:Day25)