c++ 基础 笔记

1 外部访问就是 实例类后 访问类中变量

class MyClass {
public:int publicVar; // 公有变量
protected:int protectedVar; // 受保护变量
private:int privateVar; // 私有变量
};MyClass obj;
obj.publicVar = 1; // 正确: 公有变量可以在类外部直接访问
obj.protectedVar = 2; // 错误: 受保护变量不能在类外部直接访问
obj.privateVar = 3; // 错误: 私有变量不能在类外部直接访问

2 基类protected成员是子类的内部成员

class Base {
private:int privateVar; // Base类私有成员
protected:int protectedVar; // Base类受保护成员
};class Derived : public Base {
public:void AccessMembers() {// privateVar = 1; // 错误: Derived类不能访问Base类的私有成员protectedVar = 2; // 正确: Derived类可以访问Base类的受保护成员}
};int main() {Derived obj;// obj.privateVar = 1; // 错误: 不能在类外部访问私有成员// obj.protectedVar = 2; // 错误: 不能在类外部访问受保护成员
}

3 创建指针 指向对象用 -> ; 实例化对象用 .

3.1 用 -> 的堆 ( -> 不能用在栈上)

ThrLevel1* thrLevel1 = new ThrLevel1(this, ok); // 创建 指针型用 -> 
connect(thrLevel1, &ThrLevel1::signal, this, &qt_ok::signalThrLevel1);
// 启动线程
thrLevel1->setInstId("BTC-USDT");
thrLevel1->start();

3.2 用 . 的栈

ThrLevel1 thrLevel1(this, ok);
thrLevel1.setInstId("BTC-USDT"); // 使用点操作符访问对象的成员函数
thrLevel1.start();

4 名称遮蔽  加类型名称 声明变量 是局部变量 把类全局变量搞成了 变量所在的局部变量

class MyClass {
public:MyClass() {MyType* myVar = new MyType(); // 这里创建了一个局部变量 myVar// ...}~MyClass() {delete myVar; // 这里尝试删除的是成员变量 myVar,但它实际上从未被赋值}private:MyType* myVar; // 这是类的成员变量
};

如果 myVar 定义的是类的成员变量 但是在构造函数中  加类型名称 声明变量 导致成了局部变量

MyType* myVar = new MyType();

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

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

相关文章

安卓和Android是两种不同的操作系统?

实际上,安卓和Android并不是同一种操作系统! Android是由Google开发并维护更新的一款操作系统,目前仅能运行在Pixel手机上。 Google Pixel 与 iPhone手机:哪个更好?Google Pixel 与 Apple iPhone哪个手机才是性价比最…

(1)(1.13) SiK无线电高级配置(一)

文章目录 前言 1 监控链接质量 2 诊断范围问题 3 MAVLink协议说明 前言 本文提供 SiK 遥测无线电(SiK Telemetry Radio)的高级配置信息。它面向"高级用户"和希望更好地了解无线电如何运行的用户。 !Tip 大多数用户只需要 SiK Radio v2 中提供的基本…

【GlobalMapper精品教程】070:专题地图制作完整操作教程

与其它GIS软件一样,Globalmapper也可以制作出漂亮的地图,本文讲解专题地图制作完整操作流程。 文章目录 一、效果预览二、符号化三、布局编辑1. 新建布局2. 调整页边距3. 添加经纬网4. 插入图名5. 插入指北针6. 插入比例尺7. 插入图例四、导出地图五、总结一、效果预览 在Gl…

74. 搜索二维矩阵

给你一个满足下述两条属性的 m x n 整数矩阵: 每行中的整数从左到右按非严格递增顺序排列。每行的第一个整数大于前一行的最后一个整数。 给你一个整数 target ,如果 target 在矩阵中,返回 true ;否则,返回 false 。…

三段式电流保护与自动重合闸MATLAB仿真模型

微❤关注“电气仔推送”获得资料(专享优惠) 前加速、后加速的区别: 前加速是保护装置不判别是永久性故障还是瞬时故障,直接跳闸,然后经重合闸装置来纠正;后加速是保护装置是先判别故障类型有选择性跳闸 …

【2024.01.02】刷算法07

新年首刷 三数之和 感想 说实话我看到这个题目的时候第一个想法就是用四数相加去解决,但是确实没有读题目的完全意思 用的方法是双指针法 假定有三个指针 我们希望找到所有不同的三元组 [nums[i], nums[j], nums[k]],使得 nums[i] nums[j] nums[k] 0…

C#中文件夹类Directory的常用操作,unity获取streamingAssets下所有的文件夹及文件生成树结构物体

C#中文件夹类Directory的常用操作 .Directory方便我们对文件操作,首先引用命名空间 using System.IO; Directory.CreateDirectory():用于创建文件,传入路径即可 Directory.CreateDirectory("D:\test");Directory.Delete()&#…

CF1772D 题解

洛谷题目链接 vjudge题目链接 Codeforces题目链接 分析 有序只跟相邻两个数有关所以只需考虑相邻的两个数。 接下来分类讨论&#xff1a; 如果 a i < a i 1 a_i < a_{i1} ai​<ai1​&#xff0c;如果要让 ∣ a i − x ∣ ≤ ∣ a i 1 − x ∣ | a_i-x| \le …

对话惠买集团董事长兼CEO杜瑞勇:直播电商粗放时代结束,如何用AI+XR打造精细化的智慧直播生态?

“ 未来将是专业选手精细化运营的智慧直播时代。“ 整理 | 梦婕 编辑 | 渔舟 出品&#xff5c;极新&#xff06;北京电子商务协会 直播电商在经过爆发式增长后&#xff0c;从业者不断涌入&#xff0c;竞争日趋激烈&#xff0c;行业发展必然将会进入到一个缓慢增长阶段。直播…

MySQL自定义时间间隔抽稀

MySQL自定义时间间隔抽稀 表设计数据如下按分钟抽稀按小时抽稀按天抽稀 表设计 create table monitor (tid varchar(255) not null,save_date datetime not null,tlevel decimal(10, 2) null,primary key (tid, save_date) );数据如下 按分钟抽稀 SELECT t2…

D50|单调栈

739.每日温度 初始思路&#xff1a; 暴力解法但是会超时。 class Solution {public int[] dailyTemperatures(int[] temperatures) {int[] answer new int[temperatures.length];for(int i 0;i<temperatures.length;i){for(int j i;j<temperatures.length;j){if(te…

.NET C# 如何获取object对象的数据

如何获取object对象的数据 在DAL层&#xff0c;一般会封装一些返回值&#xff0c;返回的类型就会为object &#xff0c;但是需要其中的值进行判断 public static object SaveFileIns(string filepath){return new { path pathlist, file_name fileNamelist, Message "…

FS4412系统移植及开发板启动过程

FS4412是基于samsung的arm Cortex-A9的Exynos4412的板子&#xff0c;Exynos4412采用了32nm HKMG工艺&#xff0c;是samsung的第一款四核芯片。 Windows装机过程&#xff1a; 1、准备Windows系统镜像、U盘启动盘 2、进入BIOS选择启动方式&#xff08;U盘启动&#xff09; 3、…

使用valgrind 分析缓存命中

使用valgrind 分析缓存命中 char transpose_submit_desc[] "Transpose submission"; void transpose_submit(int M, int N, int A[N][M], int B[M][N]) { int i,j,tmp;int bsize 8;unsigned long long addrA;unsigned long long addrB;unsigned long long setin…

C++第四天

定义一个Person类&#xff0c;私有成员int age&#xff0c;string &name&#xff0c;定义一个Stu类&#xff0c;包含私有成员double *score&#xff0c;写出两个类的构造函数、析构函数、拷贝构造和拷贝赋值函数&#xff0c;完成对Person的运算符重载(算术运算符、条件运算…

CentOS7部署Kafka

CentOS7部署Kafka 一、部署1、前置条件2、下载与解压3、修改配置4、启动kafka二、使用详解1、创建一个主题2、展示所有主题3、启动消费端接收消息4、生产端发送消息三、代码集成pom.xmlapplication.propertiesKafkaConfiguration.javaKafkaConsumer.javaKafkaProducer.javaVehi…

Java 将Excel转换为TXT文本格式

TXT文件是一种非常简单、通用且易于处理的文本格式。在处理大规模数据时&#xff0c;将Excel转为TXT纯文本文件可以提高处理效率。此外&#xff0c;许多编程语言和数据处理工具都有内置的函数和库来读取和处理TXT文件&#xff0c;因此将Excel文件转换为TXT还可以简化数据导入过…

可狱可囚的爬虫系列课程 08:新闻数据爬取实战

前言 本篇文章中我带大家针对前面所学 Requests 和 BeautifulSoup4 进行一个实操检验。 相信大家平时或多或少都有看新闻的习惯&#xff0c;那么我们今天所要爬取的网站便是新闻类型的&#xff1a;中国新闻网&#xff0c;我们先来使用爬虫爬取一些具有明显规则或规律的信息&am…

系列六、RestTemplate

一、RestTemplate 1.1、概述 RestTemplate是一种便捷的访问RestFul服务的模板类&#xff0c;是Spring提供的用于访问Rest服务的客户端模板工具集&#xff0c;它提供了多种便捷访问远程HTTP服务的方法。 1.2、API https://docs.spring.io/spring-framework/docs/5.2.2.RELEASE…

【MFC】计算机图形学实验:熟悉开发环境及工具(代码)

实验内容&#xff1a; 【MFC】计算机图形学实验1&#xff1a;熟悉开发环境及工具_绘制多义线mfc-CSDN博客 画笔和字体只给出两处代码&#xff1a; //创建刷子&#xff0c;设置填充色为黑色 CBrush NewBrush; NewBrush.CreateSolidBrush(RGB(0, 0, 0)); pDC->SelectObjec…