C++--类和对象——封装
发布日期:2021-11-20 10:17:42
浏览次数:17
分类:技术文章
本文共 1443 字,大约阅读时间需要 4 分钟。
类和结构体的区别:
在C++中 struct 和class唯一的区别就在于默认的访问权限不同, struct默认权限为公共 class默认权限为私有C++面向对象的三大特性:封装 继承 多态
C++认为万事万物皆为对象,对象上有其属性和行为,
如:人的属性:姓名 年龄 性别 行为: 走 跑 跳意义1:1.将属性和行为作为一个整体,表现生活的事物
**注意:专业术语:**类中的属性和行为统一称为成员, 属性:成员属性 成员变量 行为:成员函数 成员方法 语法: class 类名 { 访问权限public:属性 public: 行为 };
2.将属性(变量)和行为(函数)加以权限控制
意义2:
类在设计时,可以把属性和行为放在不同的权限下,加以控制 访问权限三种: 1.public: 公共权限 类内可以访问,类外可以访问 2.protected 保护权限 类内可以访问,类外不可以访问 儿子可以访问父亲中的保护内容 3.private 私有权限 类内可以访问,类外不可以访问 儿子不可以访问父亲中的私有内容意义一:
#include "pch.h"#include#include using namespace std;const double PI = 3.14;//设计一个圆类,求其周长//求圆周长公式:2*PI*半径,因为PI是不可改变的常量则可以定义为const double PI=3.14class circle{ //访问权限 //公共权限,让其在其内部和外部都可以访问public://属性 //半径 int m_r;//行为 //获取圆的周长 double calculateZC() { return 2 * PI*m_r; }};//设计一个学生类,属性有姓名和学号,可以给姓名和学号赋值,可以显示学生的姓名和学号class Student{ public: string name; int number;};int main(){ //通过圆类,创建一个具体的圆(即对象) circle c1; c1.m_r = 10; cout << "圆的周长" << c1.calculateZC() << endl; Student stu1; stu1.name = "mayunfei"; stu1.number = 123456; cout << "姓名" << stu1.name << endl; cout << "学号" << stu1.number << endl; return 0;}
注意二:
class person { public://公共权限 string s_name;protected://保护权限 string s_car;private: int s_password;public: void func() { s_name = "zhangsan"; s_car = "tuolaji"; s_password = 123456; }};int main() { person p1; p1.s_name = "qq"; p1.s_car = "qqq";//保护权限内容,在类外不可访问 p1.s_password = 123;//私有权限内容,在类外不可访问 return 0;}
转载地址:https://blog.csdn.net/weixin_43223362/article/details/102691471 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
路过,博主的博客真漂亮。。
[***.116.15.85]2024年04月22日 04时16分42秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
git- git checkout 创建新的分支、切换分支、切换到指定tag
2019-04-26
什么是非同质化代币(NFT)\ NFT有哪些应用?
2019-04-26
VRF是什么?
2019-04-26
Qt:01---Qt Creator与SDK的下载与安装
2019-04-26
【直播回顾】获取 iOS 用户,您还可以这么做
2019-04-27
如何保证游戏长盛不衰
2019-04-27
Kotlin Vocabulary | 内联函数的原理与应用
2019-04-27
467_Arduino AD采集范围标定
2019-04-27
468_Arduino生成ASCII码表
2019-04-27
469_Arduino超声波距离传感器例程调试
2019-04-27
470_Arduino LCD驱动初步
2019-04-27
472_Arduino setup之前的工作分析
2019-04-27
473_Arduino.h内容分析
2019-04-27
478_Arduino telnet连接测试
2019-04-27
479_C语言sizeof知识点小结
2019-04-27
480_C语言编译链接结果文件分析
2019-04-27
481_C语言野指针
2019-04-27
482_C语言函数指针小结
2019-04-27
483_Windows Terminal中默认光标为小方块
2019-04-27
500_C语言判断一个字符是否是数字
2019-04-27