C++面向对象、const和指针混用、函数参数的默认值
来源:互联网 发布:下载切换mp3软件 编辑:程序博客网 时间:2024/06/14 08:36
- C++三要素:封装、继承、多态
- const和指针类型
const int a和int const a是等价的
const int *p= int const *p锁定的是*p所指向的内容,但是p所指向的内容可以改变可以改变地址,不可以改变值int * const p锁定的是p所指向的内容,但是*p所指向的内容可以改变可以改变值,不可以改变地址const int * const p 或int const * const p锁定的是p和*p,即值和地址都不能修改
- const和引用int x = 3,const int &y = x可改变x的值,但是不能通过y改变x的值
- const与其他变量的关系。
const int x =3; int *y = &x;错误,x的值会通过y来改变,编译器不通过
int x = 3; const int *y = &x;正确,x的值可以通过y来改变,编译器通过
总结:const可以被赋值变化的量,但是不可以用const赋值变量 - 函数参数的默认值
注意:在声明时,有参数默认值的必须放在函数列表的最右端
这是因为,有参数的默认值在你实例化时候传参可能会被重新赋值,但是具体什么时候赋值,什么时候取其默认值是不清楚的,容易引起歧义,所以要有此规定。
例如:void fun(int i, int j, int k=10); √
void fun(int i=10, int j, int k); × - 【注意】在定义时,不建议给参数默认值,有些编译器会通过,有些不会通过
void fun(int i, int j, int k){}
阅读全文
0 0
- C++面向对象、const和指针混用、函数参数的默认值
- 总结1->sizeof-默认值参数的函数-static-指针和引用概念-const-CAS
- 函数指针与C的面向对象
- C和C++__带默认值参数的函数说明
- C和C++__带默认值参数的函数说明
- C/C++指针,多态,函数参数,面向对象抽象
- [C++] C++中const修饰指针,变量, 函数参数和函数返回值的用法总结
- C/C++的区别(默认值、内联函数、函数重载、const、引用、参数、返回值)
- const类型参数的对象引用和const成员函数
- const对象的指针和const指针
- const变量、const指针、const参数、const对象、const成员函数
- C++const函数和const对象
- string对象和C风格代码的混用
- 函数参数的默认值
- 函数的参数默认值
- 【C++】参数的默认值
- const对象的指针和const指针的区别
- 指向const对象的指针 和 const指针的区别
- 在无头单链表的一个节点前插入一个节点
- 一张图彻底理解UML类图中的各种关系
- jsp页面代码练习
- 单链表实现约瑟夫环
- 关于协方差矩阵的理解
- C++面向对象、const和指针混用、函数参数的默认值
- 第四周项目4—猴子选大王
- 将Eclipse上普通Java Project移植到Linux上
- ArrayList循环遍历并删除元素的常见陷阱
- 循环链表小练习
- s5p6818
- KVO的底层实现原理
- 【计算方法笔记】列高斯消元法解线性方程组
- TCP/IP学习笔记(3)-IP协议,ARP协议,RARP协议