const void *a是什么意思

const void *a是什么意思

const void *a这是定义了一个指针a,a可皮唯以指向任意类型的值,但它指向的值必须是常量,在这种情况下,我们不能修改被指向的对象,但可以使指针指向其他对象。

nst与define两者都可以用来定义常量,但是const定义时,定义了常量的类型,所以更精确一void的字面意思是“无类型”,void *则为“无类型指针”,void *可以指向任何类型核唯的数据。

扩展资料:

const成员函数和const对象:

实际上,const成员函数还有另外一项作用,即常量对象相关。对于内置的数据类型,我们可以定义它们的常量,用户自定义的类也一样,可燃氏培以定义它们的常量对象。例如,定义一个整型常量的方法为:

const int i=1 ;同样,也可以定义常量对象,假定有一个类classA,定义该类的常量对象的方法为:

const classA a;a是类classA的一个const对象,"2"传给它的构造函数参数。const对象的数据成员在对象寿命期内不能改变。

参考资料来源:百度百科-CONST (C++中CONST)


const void *a这是定义了燃氏培一个指针a,a可以指向任意类型的值,但它指向的值必须是常量,在这种情况下,我们不能修改被指向的对象,但可以使指针皮唯指向其他对象。

nst与define两者都可以用来定义常量,但是const定义时,定义了常量的类型,所以更精确一些

void的字面意思是“无类型”,void *则为“无类型指针”,void *可以指向任何类型的数据。

扩展资料:

const使用

1.、用于指针的两种情况:const是一个左结合的类型修饰符.

int const *A; //A可变,*A不可变

int *const A; //A不可变,*A可变

2、限定函数的传递值参数:

void function(const int Var); //传递过来的参数在函数内不可以改变.

3、限定函数返回值型.

const int function(); //此时const无意义

const myclassname function(); //函数返回自定义类型myclassname.

参考核唯资料来源:百度百科-CONST (C++中CONST)


  1. const与define。两者都可以用来定义常量,但是const定义时,定义了常量的类型,所以更精确一些。

  2. void的字面意思是“无类型”,void *则为“无类型指针”,void *可以指向任何类型的数据。

  3. const void *a这是定义了一个指针a,a可以指向任意类型的值,但它指向的值必须是常量。在这种情况下运宽段,我们不能修改被指向的对象,但可以使指针指向其他对象。


例如:

  1. const void *a;*a=0x123;//是编译通不过的,因为*a中旁誉放的是个const值。

                                 巧唤           //const值是不能被改变的。

  2. const int m=1; 

        const int n=2;

       a=&m; //编译可以通过。

       a=&n;//编译可以通过。


比如:
const void *a;
*a=0x123;//仿冲是编译通不过的,因为*a中放的是个const值。const值是不能被改变的。
int b;
void const *a;
这个定义:*a=0x123;是没问题的,但是a=(void*)&b;是森大迅不行的,因为a是const变量。

可以这么说,const void *a;中const修饰的是*a。在void const *a中,const 修饰的是a。
希望你明白此此。
这定义了一个指针a,a可以指向任意类型的值,但它指向的值必须是常量。
← 上一篇: 下一篇: →