首页 > 编程语言 >C++中的可见性 指针 笔记

C++中的可见性 指针 笔记

时间:2024-07-13 09:52:39浏览次数:15  
标签:可见 Set printable 笔记 访问 C++ public 指针

含义:
谁能看到他们 谁能调用? 谁能使用?
可见性的修饰符:

private

含义:
只有其所在的类可以访问,被修饰的变量
但是friend关键字可以让类 或者函数成为朋友(友元) 可以在别处访问私有成员

protected

含义:
所在的类和层次结构中的所有 子类 可以访问这些符号
例子:

class printable
{
protected:
	int a;
printable()
 :a(1)
      {}
};

class Entity: public printable
{
		public:
			 std::string getname()override
			{
				return "Ent";
			}
};
int main()
Entity e;
e.a=4;//可以访问继承类中的成员

public

含义:
公开 都可见;
为什么要使用可见性:
假如当private时会告诉所有人 不应该从其他类和代码中访问该内容
场景举例:
UI界面我们想移动一个按钮,只访问坐标X和Y 在类中创建方法 叫Set postion或Set X,让X变量本身为私有,Set postion或Set X为公共,告诉别人不能直接改X值,不然直接改X值会阅读困难。

指针

作用:为了更加合理的利用空间
比如char* a;就是在内存中开辟了一块 1字节大小的内存空间
指针类型决定了指针变量存取空间内容的宽度 决定指针加一跳过多少字节单位跨度;
比如 char*a=0; a++; 从a的地址往后挪一个字节位置 a现在的地址就是1;

标签:可见,Set,printable,笔记,访问,C++,public,指针
From: https://www.cnblogs.com/WZline/p/18299699

相关文章

  • 【C++】内存分区模型 - 内存四区
    补充内容:c++编译过程:编译预处理、编译优化、汇编、链接①编译预处理:处理以“#”开头的指令,产生“.i”文件;【如头文件、define宏定义等】②编译优化:将源码".cpp"文件翻译成“.s”汇编代码;【如词法语法语义分析,代码优化等】③汇编:将汇编代码“.s”翻译成机器指令“.o”或".ob......
  • manim学习笔记04:使用manim,表示向量和加法。
    manim学习笔记04:使用manim,表示向量和加法。一,相关定义1.有向线段:规定若线段AB的端点为起点为A,B为终点,则线段就具有了从起点A到终点B的方向和长度。具有方向和长度的线段叫做有向线段。接下来我们体会一下相关的代码:classVectorArrow(Scene):defconstruct(self):......
  • 南外c++集训枚举题:关灯
    根据标题可知这道题一定是一道枚举题这道题考虑使用dfs,处理特殊处理第一层,每次加答案时选最优值。给出代码:点击查看代码#include<bits/stdc++.h>usingnamespacestd;intn,m;charmat[20][110];intdfs(intcnt,intpos,inttmp)//cnt:楼层pos:哪里的楼梯tmp走到楼梯......
  • 2024年06月CCF-GESP编程能力等级认证C++编程三级真题解析
    本文收录于专栏《C++等级认证CCF-GESP真题解析》,专栏总目录:点这里。订阅后可阅读专栏内所有文章。一、单选题(每题2分,共30分)第1题小杨父母带他到某培训机构给他报名参加CCF组织的GESP认证考试的第1级,那他可以选择的认证语言有()种。A.1B.2C.3D.4答案:C第2......
  • 嵌入式C++、Qt/QML和MQTT:智能工厂设备监控系统的全流程介绍(附代码示例)
    1.项目概述本项目旨在开发一套先进的智能工厂设备监控系统,集成嵌入式技术、工业通信协议和人机界面等多项技术,实现对工厂设备的全方位实时监控、高精度数据采集和智能化分析。该系统将显著提升工厂设备的运行效率,大幅降低维护成本,并为管理层决策提供可靠的数据支持。主要功......
  • 学习Cocos 3.8笔记(一)
    3D项目和2D项目差别并不大项目结构如下通过Dashboard,我们可以创建一个HelloWorld项目作为开始,创建之后的项目有特定的文件夹结构,我们将在这一节熟悉CocosCreator项目的文件夹结构。项目文件夹结构初次创建并打开一个CocosCreator项目后,开发者的项目文件夹将会包括......
  • c++学习
    20240712最近开始看候捷的c++视频,视频是从类开始讲的,过程中发现很多c的知识有点忘了,而且c++也有很多新的语法特性。因此看完前几个视频后花点时间过一下c++primer前六章,记录一下需要学习的c++新特性和代码规范。学引用时有点乱,抽时间搞一下值类型的总结#第二章基本类型lon......
  • [学习笔记] 长链剖分 - 图论
    长链剖分字面意思,不同于重链剖分,每次选取最长的树链进行剖分,直到剖完为止。其原理和重链剖分相似。建议学习长链剖分前,先学习重链剖分。重链剖分能做的,长链剖分都能做(当然不包括找重儿子),长链剖分还能以\(O(nlogn)-O(1)\)的优秀复杂度找到\(k\)级祖先(当前节点的第\(k\)个......
  • C++中的多态
    抽象类概念在虚函数的后面写上=0,则这个函数为纯虚函数。包含纯虚函数的类叫做抽象类(也叫接口类),抽象类不能实例化出对象。派生类继承后也不能实例化出对象,只有重写纯虚函数,派生类才能实例化出对象。纯虚函数规范了派生类必须重写,另外纯虚函数更体现出了接口继承。......
  • 7/12 训练笔记
    闲话打OIBingo然后大力卡时卡空间,贺了最优解之后成功Bingo.rep(i,0,(int)v.size()-1)v.push_back(1);在vectorv本来就有内容的情况下会持续循环。rep(i,1,n)rep(i,1,n)cin>>a[i];似乎会出问题。P4137RmqProblem/mex回滚莫队题,莫队笔记。考虑mex......