码农知识堂 - 1000bd
Python
PHP
JS/TS
JAVA
C/C++
C#
GO
Kotlin
Swift
C++封装-类和对象
1.类和类型
类型和变量
类型 = 类型数据 + 类型操作
类与对象
类:Cat 对象:cat
类:Cat* 对象:new Cat()
2.类封装
封装的意义
抽象,隐蔽性,安全性,耦合,内聚
封装的目的:不让外部访问
方法为什么不占内存?
方法是动态的(是逻辑思维,算法,不存储任何东西)
#progma pack(1) :取消内存对齐!
访问权限(访问权限是针对外部的)
public:公共访问权限
private:私有访问权限
protected:受保护的访问权限
类大小与内存对齐
People类对象在内存中所占内存大小?
类中非静态成员变量的大小与编译器内存对齐的设置有关。
struct与class
struct:访问权限默认为public
class:访问权限默认为private
3.友元
友元-friend
C++通过友元机制允许类的非公有成员被其他类或者非成员函数访问
友元类和友元方法
普通函数友元
友元其他特性
①友元只具单向性
若类B是类A友元,类A不一定是类B友元,要看类中是否有相应声明。
②友元不能被继承
B是A的友元类,C是B的子类,推不出C是A的友元。
③友元不具传递性
B是A的友元,C是B的友元,推不出C是A的友元。
注:友元包括声明与定义。友元声明默认为extern,友元类或友元函数作用域已拓展至包含该类定义的作用域,即便在类的内部定义友元函数也没关系。
4.头文件和前置声明
头文件
前置声明作用
告诉编译器有这一个类。
前置声明能防止交叉引用问题。
相关阅读:
写代码有这20个好习惯,可以减少90%非业务的bug
SC7A20(士兰微-加速度传感器)示例
2023年高教社杯数学建模国赛 赛题浅析
nodeJs--url模块
【预训练语言模型】 使用Transformers库进行BERT预训练
java毕业设计校园管理系统mybatis+源码+调试部署+系统+数据库+lw
IDEA 优质 插件 Translation 跟随 IDEA 2022.3 版 更新翻译引擎啦
使用mybatis-plus时mysql和oracle的区别
React Redux 如何更新购物车中的产品数量
关于安卓卡片式交互实现(recyclerview)
原文地址:https://blog.csdn.net/u011616934/article/details/125435884
最新文章
沪漂五周年了:我越来越迷茫了
Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
MySQL-Seconds_behind_master的精度误差
[MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
Agent OS :五种驯服不确定性的范式
PortSwigger SQL注入LAB11
数据库即时编译JIT
[Begin]AI Learn Data Day 0
深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
热门文章
十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
奉劝各位学弟学妹们,该打造你的技术影响力了!
五年了,我在 CSDN 的两个一百万。
Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
面试官都震惊,你这网络基础可以啊!
你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
心情不好的时候,用 Python 画棵樱花树送给自己吧
通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
13 万字 C 语言从入门到精通保姆级教程2021 年版
10行代码集2000张美女图,Python爬虫120例,再上征途
小工具
小游戏
Copyright © 2022 侵权请联系
2656653265@qq.com
京ICP备2022015340号-1
京公网安备 11010502049817号