首页 > 其他分享 >const关键字

const关键字

时间:2023-05-07 20:55:45浏览次数:31  
标签:const int 成员 绑定 关键字 对象 指针

1.const修饰普通变量

const int a = 10;

a被视为常量

2.const修饰指针

int a = 10;

int const * b = &a; 此时b为常量指针,因为const修饰的是* b,所以指针的指向的内容不能变,指向可变,

int * const c = &a;此时c指针常量,c的指向不可以变,但可以通过c来改变指向的内容

3.const引用

const引用是可以绑定到const对象或者非const对象上,但是不可以通过const引用来修改原对象的值

非const引用只能绑定到非const对象上,不能绑定到const对象上

所以总结完就是非const引用不能绑定到const对象上

4.const成员变量

const成员变量只能在类内进行声明,定义,在构造函数初始化列表中进行初始化

5.const成员函数

不能修改成员变量的值,只能访问成员变量,不能够调用非const成员函数

const对象只能调用const成员函数,const成员函数对this指针加const限制

非const对象可以调用双版本成员函数,优先调用const版本

void print() const //const point* const this

void print() //point* const this

 

标签:const,int,成员,绑定,关键字,对象,指针
From: https://www.cnblogs.com/cintang/p/17380082.html

相关文章

  • Rabbitmq介绍,安装,基于queue实现消费者生产者,基本使用,消息安全,持久化,闲置消费,发布订阅,
    内容详细Rabbmit介绍消息队列中间件概念很大,准确一些叫消息队列中间件消息队列中间件使用redis当作消息队列来用,blpop阻塞式弹出,实现队列,先进先出MQ,消息队列,MessageQueue是什么?消息队列就是基础数据结构中先进先出(队列)的一种数据机制,类比于生活中,买东西,需要排队,先排队的人......
  • 初识常见关键字
     typedef:类型定义(类型重定义)简单来说就是重命名就是如何把常语句简单化,只需在函数前给上一个typedefunsignedintu_int;就可以直接把这个类型重新起了个新名字u_int,这个简写就和原本的是一样的意思 static:静态的(有3种用法)1.static修饰局部变量,改变了局部变量的生命周期(......
  • 掌握C++中static关键字的多种使用场景
    static是什么在最开始C中引入了static关键字可以用于修饰变量和函数,后来由于C++引入了class的概念,现在static可以修饰的对象分为以下5种:成员变量,成员函数,普通函数,局部变量,全局变量static的作用修饰成员变量static修饰成员变量之后,该变量会属于该类,而不是某一个该类的对象。......
  • k09_标识符关键字
    标识符在java语言中,标识符常用来给类、对象、变量、方法、接口、自定义数据类型等命名的。java标识符命名规则:标识符由任意顺序的大小写字母(a-z,A-Z),数字(0-9)下划线(_)和美元符号($)组成。标识符不能以数字开头标识符是区别大小写的标识符目前是没有长度限制的不能把j......
  • static,和auto关键字
    这两个关键字是一对的static表示静态publicstaticvoidmothed1(){stringtext="234.567891230";//Console.WriteLine(int.Parse(text));//必须是对应的类型Console.WriteLine(double.Parse(text));C......
  • java封装和关键字
    一、封装封装:告诉我们如何正确设计对象的属性和方法对象代表什么,就得封装对应的数据,并提供数据对应的行为封装的好处:让编程变得很简单,有什么事,找对象,调方法降低学习成本,可以少学,少记,或者说压根不用学,不用记对象有哪些方法,有需要时去找就行二、Private关键字:是一个......
  • Rabbitmq 介绍 、安装、基于Queue实现生产者消费者模型、基本使用、消息安全之ack、du
    师承老刘llnb一、消息队列介绍1.1介绍消息队列就是基础数据结构中的“先进先出”的一种数据机构。想一下,生活中买东西,需要排队,先排的人先买消费,就是典型的“先进先出”1.2MQ解决什么问题MQ是一直存在,不过随着微服务架构的流行,成了解决微服务之间问题的常用工具。应用解耦......
  • C# 通过iTextSharp实现关键字签字盖章(通过在内容中插入盖章图片的形式)
    此功能通过 iTextSharp 读取PDF文档信息,并循环查找每一页PDF文件,在整个PDF中只要是符合条件的地方都会盖章,如只需要在最后一页盖章,请将方法中For循环去掉,并将PdfContentBytecontentByte=pdfStamper.GetUnderContent(i);parser.ProcessContent<PdfLocation>(i,location);......
  • const_cast,static_cast,dynamic_cast,reinterpret_cast的区别(转)
    原文:https://www.cnblogs.com/fancy-xt/p/5339177.htmlC++继承了C中的隐式和显式转换的方式。但这种转换并不是安全和严格的,加上C++本身对象模型的复杂性,C++增加了四个显示转换的关键字。(C++是强类型语言)经过编码测试,小结如下:const_cast:仅用于去掉完全同类型的const,volatile......
  • 为啥this和super关键字在构造方法中只能写在第一行
    首先对于super:super关键字会在子类的构造方法中使用,用来对父类属性进行初始化,而super必须放在第一行,因为子类有可能使用父类属性,就必须在使用之前先对父类属性完成初始化。对于this关键字: 如上代码:this关键字必须写在构造方法的第一行,因为如果在this关键字之前的代码用到了C0......