首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

this指针const

this指针const 目录 ? this指针 this 是 C++ 中一个关键字,也是一个 const 指针,不可以修改指向。this指针指向当前对象,通过它可以访问当前对象所有成员。...因此,编译时在成员函数中添加一个隐藏参数,将当前调用对象首地址传入,用来关联成员函数成员变量,这就是this指针 C++关键字,const指针,在类成员函数,构造函数析构函数中,对所有成员访问,...cin.get(); return 0; } //打印结果 My name is:女朋友,My age is:18 00CFF8F4 00CFF8F4 在上述代码运行结果中可以看出this指针指向就是对象地址...; //const修饰 *p const int* p; //常量指针 不能通过指针修改p指向内容(不能修改指向内容) 指针常量 const 修饰 p int temp =10; int...* const p = &temp; //指针常量 不能修改p指向 且必须初始化 const用于函数形参 void fun(const int *p); const用于形参时说明了形参在函数内部不会被改变

1.5K30
您找到你想要的搜索结果了吗?
是的
没有找到

C语言 | 指向指针指针

在编程方面有着天赋异禀的人毕竟是少数,我们大多数人想要从C语言小白进阶到高手,需要经历是日积月累学习。 那么如何学习呢?当然是每天都练习一道C语言题目!! ? 作者 闫小林 白天搬砖,晚上做梦。...例82:C语言用指向指针指针方法对n个整数排序并输出;要求将排序单独写成一个函数;n个整数在主函数中输入,最后在主函数中输出。...解题思路:读者看着道题时候,首先要观察一下有什么规律,然后指向指针指针在上一道练习题中已经有了铺垫,读者可以联系上一道题去熟练使用指向指针指针。...:");//提示语句 scanf("%d",&number);//键盘输入 for(i=0;i<number;i++) { pstr[i]=&data[i]; //将第i个整数地址赋予指针数组...我们常说“学而不思则罔”,学习编程知识一样,我们只有在学习同时加以总结与思考,才能对编程有更系统深入地了解,学到知识才真正能为自己所用。

3K32

指向函数指针

指向函数指针 程序中定义函数后,对程序进行编译时,编译系统为函数分配一段存储空间存储二进制代码,这段内存空间起始地址(也称入口地址)称为函数指针。...程序中可以定义一个指针变量,用来存放一个函数起始地址,即该指针变量指向一个函数,称为函数指针变量。...函数指针变量定义一般形式如下: 类型说明符(*指针变量名)(函数形参列表); 说明: (1)函数指针变量可以指向函数满足两个条件:函数返回值由上面“类型说明符”确定;函数形参列表与上面...int(*pl)(int a, int b); double(* p2)( double x); 其中,函数指针变量pl可以指向返回值类型为int,形参是两个int类型变量函数;函数指针变量...例如 int c=(*p1)(100,10); 上面语句调用指针p1指向函数,实参为10010,返回值赋值给变量c。

78910

指向函数指针

当调用一个函数时出了通过函数名来调用之外,还可以通过指向该函数指针变量来调用。切记,一切指针变量一样,一个指向函数指针其初值也不能为空。因为它在使用之前必须被赋予一个真实地址。...double result = 0.0; 22 result = func1(0.0,1.0); 23 printf("%g\n",result); 24 } 现在改写上面的代码,使用一个指向函数指针变量来调用函数...(2)、(*p)两侧括号不能省,p先与*结合,表面是一个指针变量,在后面的()内容结合,表示此指针变量指向函数而非变量,如果去掉,如:double *p()表示p()返回类型是一个指向double型变量指针...但对于指向函数指针变量,它只能指向函数入口处而无法指向函数中某条具体指令,因此,对于p+n,p++等指针运算对于指向函数指针没有意义。...如:double (*p)(double , double); 所以,通过以上了解,我们知道了指向函数指针灵活性,一个指针变量可以调用多个不同函数,这对于程序优化简化都起了很大作用。

1.3K60

c语言之const指针

const指针 区别方法: 如果const位于*左侧,则const就是用来修饰指针指向变量,即指针指向为常量; 如果const位于*右侧,const就是修饰指针本身,即指针本身是常量。...例: const int x=20;//定义int类型符号常量x,x=20 const int *p=&x;//定义指向常量指针p, //可以改变指针指向,但是不能通过指针来改变 x中指针常量...const靠近指针,就是定义这个指针为常指针 例: int * const p2=&x;//定义常指针p2, //不可改变指针指向(常指针),但可以通过指针来修改x中值 相关六种写法 const...*p2=30;//可以修改常指针指向变量值 cout<<"p2="<<p2<<" *p2="<<*p2<<endl; //定义<em>指向</em>常量<em>的</em>常<em>指针</em> <em>const</em>...int * <em>const</em> p3=&x; p3=&y;//不可以改变常<em>指针</em><em>的</em><em>指向</em>。

48811

C语言 | 指向指针指针排序

在编程方面有着天赋异禀的人毕竟是少数,我们大多数人想要从C语言小白进阶到高手,需要经历是日积月累学习。 那么如何学习呢?当然是每天都练习一道C语言题目!! ? 作者 闫小林 白天搬砖,晚上做梦。...例81:C语言实现用指向指针指针方法对5个字符串排序并输出。...解题思路:读者看着道题时候,首先要知道什么时指针指向指针指针应该怎么用,一般在开发中不这样用,读者要看明白,这个很锻炼思维。...char **point,*pstr[5],str[5][LINEMAX];//定义变量 for(i=0;i<5;i++) { pstr[i]=str[i]; //将第i个字符串首地址赋予指针数组...return 0;//主函数返回值为0 } void sort(char **point)//冒泡排序算法实现 { int i,j;//定义整型变量 char *temp;//定义字符指针变量

1.7K32

EasyC++28,const指针

这是EasyC++系列第28篇,简单聊聊const指针指针const 我们知道const关键字修饰是不可变量,将它指针一起使用,会有很多微妙地方。...关于使用const来修饰指针,有两种不同方式。第一种是让指针指向一个常量对象,这样可以防止使用该指针进行修改指向值。第二种则是将指针本身声明为常量,可以防止改变指针指向位置。...指向常量指针 首先是指向常量指针,含义是指针类型是一个常量类型。所以写成: const int * p; 可以理解成p是一个指针,它类型是const int,也就是常量类型。...const指针指的是指针本身是const修饰,我们无法修改指针指向位置。...int age = 23; int* const p = &age; 但是我们修改指针指向值是可以: *p = 2333; // 合法 指针内容都不可变 当然我们也可以将两种const叠加使用

14020

7.4 指向函数指针

一、什么是函数指针 解释:存储空间起始地址(又称入口地址)称为这个函数指针 二、用函数指针变量调用函数 (1)通过函数名调用 (2)通过指针变量访问它所指向函数 三、定义使用指向函数指针变量...一般形式 类型名(*指针变量名)(函数参数表列) 注意: ①定义指向函数指针变量,并不意味着这个指针变量可以指向任何函数,它只能指向在定义时指定类型函数 ②如果要用指针调用函数,必须先使指针变量指向该函数...③在给函数入口地址赋值时,只需给出函数名而不必给出参数 ④用函数指针变量调用函数时,只需将(*p)代替函数名即可,在(*p)之后括号中根据需要写上实参 ⑤对指向函数指针变量不能进行算术运算 ⑥用函数名调用函数...,只能调用所指定一个函数,而通过指针变量调用函数比较灵活,可以根据不同情况先后调用不同函数 四、用指向函数指针作函数参数 指向函数指针变量一个重要用途是把函数地址作为参数传递到其他函数

8323329

8.5 指向函数指针

2、可以定义一个指向函数指针变量,用来存放某一函数起始地址,这就意味着此指针变量指向该函数。...3、例子 int (*p)(int,int); 定义p是一个指向函数指针变量,它可以指向函数类型为整型且有两个整型参数函数。p类型用int(*)(int,int)表示。...03 怎么定义使用指向函数指针变量 1、一般形式 类型名(*指针变量名)(函数参数表列);如“int(*p)(int,int);”,这里“类型名”是指函数返回值类型。...2、定义指向函数指针变量,并不意味着这个指针变量可以指向任何函数,它只能指向在定义时指定类型函数。 3、如果要用指针调用函数,必须先使指针变量指向该函数。...04 用指向函数指针作函数参数 1、指向函数指针变量一个重要用途是把函数地址作为参数传递到其他函数。

9193029

指针常量常量指针区别_指针常量能指向常量吗

用法如下: int a = 10, b = 20; int * const p = &a; *p = 30; // p指向地址是一定,但其内容可以修改 2、常量指针——指向“常量”指针const...int *p, int const *p) 常量指针本质上是一个指针,常量表示指针指向内容,说明该指针指向一个“常量”。...在常量指针中,指针指向内容是不可改变指针看起来好像指向了一个常量。...int m = 10; const int n = 20; // 必须在定义同时初始化 const int *ptr1 = &m; // 指针指向内容不可改变 int *...错误,指针常量不能在定义后赋值 const int * const ptr6 = &m; // 指向“常量”指针常量,具有常量指针指针常量特点,指针内容不能改变,也不能指向其他地方,定义同时要进行初始化

1.3K20

指向类数据成员指针

在C++中,可以定义一个指针,使其指向类成员或成员函数,然后通过指针 来访问类成员。这包括指向属性成员指针指向成员函数指针。它类似与static成员函数或成员变量,具有共享属性。...每一个实例化对象都可以借助指向类数据成员指针来访问指向数据。...*pf)(); (ps3->*pf)(); getchar(); return 0; } 以上均是指向非静态成员类成员指针,而指向静态类成员指针则非常简单。...●指向类静态成员函数指针 指向静态成员函数指针普通指针相同,在定义时无须类相关联,在使用时也 无须具体对象相关联。...int *p = & Student::data; cout<<*p<<endl; // 指向类静态数据成员函数指针 void (*pfunc)() = Student::display; pfunc

14710

c++常量指针指针常量_指针指向二维数组

** 一:常量 ** 常量指针,指针常量,常量指针常量 a)常量定义:不可修改值,例如250,’A’ b)const关键字功能:将变量常量化,四种形式 (1)const可以修饰普通变量,一旦修饰该变量...,该变量就当做常量看待,不可再更改 Const int a=250;//将变量a常量化 A=200;//gcc编译器报错 (2)常量指针:不能通过指针变量来修改指向内存区域数据,主要目的是保护数据不可篡改...*pa=200;//gcc编译报错 Printf(“a=%d\n”,*pa);//可以查看 int b=300; pa=&b;//pa重新指向b变量,可以修改指针变量本身保存地址 *pa=400...;//gcc编译报错 (3)指针常量(不太用) 指针永远指向一块内存区域,不能再指向别的内存,但是可以修改指针内存值 例如: int a=100; int * const pa=&a;//定义指针常量...*pa=300;//可以 printf("a=%d\n",*pa); int b=200; *pa=&b;//不可以,gcc报错 printf("a=%d\n",*pa); (4)常量指针常量:指针本身指向内容都不可修改

72220

指针指向常量_常量指针四种

const关键字 指针常量常量指针都离不开const关键字,我们先来了解一下什么是const关键字,const被用来定义常量,如果将一个变量加上const关键字,则被修饰变量值将无法改变。...下面是const修饰变量用法: const int a = 6; 或者 int const a = 6; 此时变量a值无法改变,只能访问,不能改写 指针常量 指针本身是一个常量,不能更改指针指向地址...p指向值为:200 a值为:200 b值为:200 常量指针 常量指针指的是一个常量,所以指针指向值是不能改变,但是指针指向地址是可以改变 #include using...} // 输出结果 指针p指向值为:200 a值为:100 b值为:200 区别 注意指针常量常量指针区别,指针常量只能改变值,不能改变地址,常量指针只能改变地址,不能改变值。...如果要想值地址都不改变可以同时在前后都加上const关键字 例: int a = 100,b = 200; const int * const p = &a; // 此时指针p指向a地址,指针指向不能指向别的值

65710

指针讲解:*&p&*p 及const用法总结

指针 一讲到指针,不少同学就会觉得云里雾里。首先要明白,指针地址是一个概念;然后明白指针指针变量区别。...*p**p区别 int *p :一级指针,表示p所指向地址里面存放是一个int类型值 int **p :二级指针,表示p所指向地址里面存放是一个指向int类型指针(即p指向地址里面存放是一个指向...---- (1)const int *p; int const *p; //含义是指向常量指针指针常量值不可以修改 两者相同,p是一个指向整形常亮指针,可以修改指针值,但不能修改指针指向值...* const p; 无论是指针本身还是它所指向值都是常量。...简单判断方法: 如果const在 * 左侧,则const用来修饰指针指向变量,即指针指向位常量; 如果const位于 * 右侧,则const就是修饰指针本身,即指针本身就是常量。

52910
领券