C++学习知识小结

1. 什么是类?什么是对象?两者之间什么关系?

类是一类事物的共同特征的抽象描述,它定义这类所有的属性和方法

  • 可以理解为模版
  • 类本身不占用空间,它只是一种定义,描述了对象一个是什么样子、能做什么

对象是根据类创建的具体实体,它拥有类中定义的属性和方法,并且占用实际的内存空间。

  • 可以理解为“模版的具体产物
  • 每个对象的属性可以有不同的值,但是都遵循类的类的定义和结构体是行为。

类和对象 的关系:

  1. 类是对象的抽象,对象是类的实例
  2. 类是数据类型,对象是变量
  3. 一个类可以创建多个对象

2. 对象的组成有哪些?类定义的一般格式?

在面向对象编程中,对象由两个部分组成:属性和方法

属性(成员变量)

描述对象的静态特征,即对象锁具有的特征或状态

方法(成员函数)

描述对象的动态行为,即对象能执行的动作或功能

类定义的核心是通过 class 关键字,结合访问控制符,封装属性(成员变量)和方法(成员函数),为创建对象提供模板。

3. 类中成员的访问属性有哪些?分别表示什么意思?

在C++类中,成员(包括成员变量和成员函数)访问属性通过访问访问控制符来定义,用于控制类外成员的访问。共有三种访问属性,分别是公有、私有、和保护。

  1. public(公有成员)
    • 类的公有成员可以被类内部,类外部以及该类的派生类直接访问。
    • 用于定义类外暴露“接口”,即允许外部通过对象直接调用的方法或需要公开的属性,是类与外部交互的窗口
  2. private(私有成员)
    • 类的私有成员只能被类内部的成员访问,类外部(包括通过对象直接访问)和派生类都是不能直接进行访问的
    • 用于隐藏类内部实现细节,比如核心数据,仅通过公有方法间接操作,确保数据的安全,是封装的核心体现。
  3. protected(保护成员)
    • 类的保护成员可以被类内部和该类的派生类访问,但是类的外部不能直接访问。
    • 介于共有和私有之间,主要继承场景,允许子类访问父类的某些成员,同时限制外部的访问。
访问属性类内部类外部派生类用途
public可访问可访问可访问定义对外接口
private可访问不可访问不可访问隐藏内部数据
protected可访问不可访问可访问允许子类继承的中间数据

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/pingmian/95746.shtml
繁体地址,请注明出处:http://hk.pswp.cn/pingmian/95746.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

9. Mono项目与Unity的关系

1.Mono项目简介 2.Mono项目与Unity是如何结合的 3.从Mono到IL2CPP演变过程1.Mono项目简介 1).定义Mono是一个自由、开源的项目, 由Xamarin现属于微软主导开发; 它的目标是创建一个一套兼容于微软.NET Framework 的跨平台工具2).核心功能a.C#编译器能将你写的C#代码编译成IL(中间…

谷歌Genie 3:让你的照片变成可以玩的游戏世界

你是否曾凝视着一张完美的旅行照片,想象着如果能走进那个画面,自由探索会是怎样一种体验?或者,你是否曾被一幅画的奇幻氛围所吸引,渴望能在那片色彩斑斓的世界里奔跑跳跃?过去,这只是白日梦。而…

Cursor 提示词探索——如何打造真正懂自己的Agent

最近看到鱼皮的Cursor提示词分享(微信公众平台),刚好之前也在做Agent开发,跟提示词打交道的多,也经常发现 ai 蠢蠢的,一点不会根据提示词设计的来,按鱼皮的分享研究了一下,写了这篇博客。 Curs…

C++ 内存模型:用生活中的例子理解并发编程

C 内存模型:用生活中的例子理解并发编程 文章目录C 内存模型:用生活中的例子理解并发编程引言:为什么需要内存模型?核心概念:改动序列原子类型:不可分割的操作内存次序:不同的同步级别1. 宽松次…

AI急速搭建网站:Gemini、Bolt或Jules、GitHub、Cloudflare Pages实战全流程!

文章目录AI急速搭建网站:Gemini、Bolt或Jules、GitHub、Cloudflare Pages实战全流程!🚀 极速建站新范式:Gemini、Bolt.new、GitHub & Cloudflare Pages 全流程实战!第一步:创意可视化与代码生成 — Goo…

Qwen2.5-VL实现本地GPTQ量化

本文不生产技术,只做技术的搬运工!! 前言 公开的Qwen2.5-VL模型虽然功能非常强大,但有时面对专业垂直领域的问题往往会出现一些莫名其妙的回复,这时候大家一版选择对模型进行微调,而微调后的模型如果直接部署则显存开销过大,这时就需要执行量化,下面将介绍执行本地GPT…

【Redis】常用数据结构之Hash篇:从常用命令到使用场景详解

目录 1.前言 插播一条消息~ 2.正文 2.1Hash与String对比 2.2常用命令 2.2.1HSET 2.2.2HGET 2.2.3HEXISTS 2.2.4HDEL 2.2.5HKEYS 2.2.6HVALS 2.2.7HGETALL 2.2.8HMGET 2.2.9HLEN 2.2.10HSETNX 2.2.11HINCRBY 2.2.12HINCRBYFLOAT 2.3内部编码 2.3.1. ziplist&…

OSPF基础部分知识点

OSPF基础 前言 路由器 根据 路由表 转发数据包,路由表项 可通过手动配置 和动态路由协议 生成。(两种生成方式)静态路由比动态路由使用更少的带宽,并且不占用CPU资源来计算和分析路由更新。当网络结构比较简单时,只需配…

Flutter 真 3D 游戏引擎来了,flame_3d 了解一下

在刚刚结束的 FlutterNFriends 大会上,Flame 展示了它们关于 3D 游戏的支持:flame_3d ,Flame 是一个以组件系统(Flame Component System, FCS)、游戏循环、碰撞检测和输入处理为核心的 Flutter 游戏框架,而…

无需公网IP,电脑随时与异地飞牛同步互联保持数据一致性

最近小白有这样一个烦恼:随身带着的电脑每天都在更新内容,于是就会有很多很多的存稿。电脑的空间开始变得不够用了。各式各样的图片、视频、文稿等内容,如果要整理到飞牛NAS上,好像很麻烦,而且每次都是需要回到家里才能…

数据库中间件ShardingSphere v5.2.1

数据库中间件ShardingSphere v5.2.1 文章目录数据库中间件ShardingSphere v5.2.1一 概述1 数据库的瓶颈2 优化的手段3 主从复制4 读写分离5 分库分表5.1 背景5.2 垂直分片5.3 水平分片6 ShardingSphere简介二 ShardingSphere-JDBC讲解1 读写分离实现1.1 基于Docker搭建MySQL主从…

[Upscayl图像增强] Electron主进程命令 | 进程间通信IPC

第三章:Electron主进程命令 欢迎回来🐻‍❄️ 在第一章:渲染器用户界面(前端)中,我们探索了您与之交互的按钮和菜单。然后在第二章:AI模型中,我们了解了让您的图像看起来更棒的&qu…

电竞护航小程序成品搭建三角洲行动护航小程序开发俱乐部点单小程序成品游戏派单小程序定制

功能列表:商家入驻 成为管事 平台公告 客服密钥 客服管理 发单模板 快捷发单 自定义发单 打手入驻 订单裁决 即时通讯 (接单者员与发单者) 打手排行 邀请排行 余额提现技术栈:前端uniapp 后端java

Redis数据库基础

1.关系型数据库和NoSQL数据库数据库主要分为两大类:关系型数据库与NoSQL数据库关系型数据库,是建立在关系模型基础是的数据库,其借助集合代数等数学概念和方法来处理数据库中的数据主流的MySQL,Oracle,MS SQL Server 和DB2都属于这…

【Java实战㉗】Java日志框架实战:Logback与Log4j2的深度探索

目录一、日志框架概述1.1 日志的作用1.2 常见日志框架1.3 日志级别二、Logback 框架实战2.1 Logback 依赖导入2.2 Logback 配置文件2.3 日志输出格式自定义2.4 Logback 进阶配置三、Log4j2 框架实战3.1 Log4j2 依赖导入3.2 Log4j2 配置文件3.3 Log4j2 与 SLF4J 整合3.4 日志框架…

基于WFOA与BP神经网络回归模型的特征选择方法研究(Python实现)

说明:这是一个机器学习实战项目(附带数据代码文档),如需数据代码文档可以直接到文章最后关注获取 或者私信获取。 1.项目背景 在大数据分析与智能建模领域,高维数据广泛存在于金融预测、环境监测和工业过程控制等场景…

​​AI生成PPT工具推荐,从此以后再也不用担心不会做PPT了​​

对于很多人老说,做ppt实在太麻烦了,快速制作出专业且美观的PPT成为众多人的需求,AI生成PPT工具应运而生,极大地提升了PPT制作的效率。以下为大家推荐多个实用的AI生成PPT工具。 1、AiPPT星级评分:★★★★★ AiPPT是一…

CentOS系统停服,系统迁移Ubuntu LTS

CentOS官方已全面停止维护CentOS Linux项目,公告指出 CentOS 7在2024年6月30日停止技术服务支持,(在此之前 2022年1月1日起CentOS官方已经不再对CentOS 8提供服务支持),详情见CentOS官方公告。 一、系统迁移评估 用户需要开始计…

Linux知识回顾总结----文件系统

上章讲的是 os 如果管理被打开的文件,那么没有被打开的文件(也就是在磁盘单中的文件)使用文件系统进行管理。了解完这一章,我们就可以理解我们如果想要打开一个文件的是如何找到整个文件,然后如何把它加载到内存中的&a…

iOS蓝牙使用及深入剖析高频高负载传输丢包解决方案(附源码)

最近开发了一套iOS原生的蓝牙SDK,总结了一些有价值的踩过的坑,分享出来给有需要的同学做个参考。 一、蓝牙的使用 iOS有一套封装好的完善的蓝牙API ,可以很便捷的实现与蓝牙的连接和通信,蓝牙通信的大体流程如下,先对基…