C++ PP chapter Ⅶ C++的编程模块
来源:互联网 发布:淘宝客返利网站程序 编辑:程序博客网 时间:2024/05/01 05:53
1. 参数(argument) --> 实参 参量(parameter) --> 形参2. A[] 同样传递的是地址,可对原数组修改 传递数组地址时,目标函数无法通过 sizeof (arrayName) 量长 必须把长度一并传去 (或使用首尾地址法,传递首地址和尾地址的指针)3. 可以用关键字 const 保护数组 //(constant) const 和指针: 两种使用方式 a. 让指针指向一个常量对象,防止使用该指针修改所指向的值 例如 const int *pt = &age; 注意 const 变量的地址必须传给指向 const 的指针 例如 const float A = 0.1; const float *pa = &A; -->valid float *pb = &A; -->invalid //之所以禁止的目的是防止通过普通指针修改const变量的值 在一级间接关系时可以将 非 const 指针的地址赋给 const 指针 但再深不行 int *p1 = &ans; const int *pp2 = p1; b.将指针本身声明为常量,防止改变指针指向的位置 例如 int * const p = &age; 那么 p 所指向地址无法修改4. 数组指针 和 指针数组 int (*ar)[4] 等价于 ar[][4] 表示指向4个int组成的数组的指针 若对二维数组首地址声明为指针 (*ar)[x] ( 或ar[][x] ) 那么对于二维数组元素的指针表达 ar[y][x] = *((*ar+y)+x)5. 对结构体处理的函数 三种传递方式 : 按值传递、传递结构的地址、引用 按值传递是对副本的操作,使用 . 号成员访问法 地址传递使用成员的指针访问 ->6. 函数与string对象 string 对象可以直接按值传递 string 的数组声明 : string List[Size] 整行读取方法 getline(cin,List[i]) 函数传递 string sa[]7. 函数与array对象 例如 : std::array<double, 4> expenses; 对于函数 void Show(std::array<double ,4> da); 按值传递 Show(expenses) 对于函数 void Fill(std::array<double ,4> *pa); 传递地址 Fill(&expenses) 要注意的是对于array对象可以使用坐标读取法 (*pa)[i] --------------pa是指针,*pa是array首地址,(*pa)[i] 便为实际空间8. 函数指针 函数的指针是存储其机器代码的内存的开始地址(就是函数名本身)[C++ P笔记中会补充这一知识点,暂且跳过]
0 0
- C++ PP chapter Ⅶ C++的编程模块
- C++PP Chapter XVI String类和标准模板库
- C++PP 11-6
- C++PP 14-4
- c++pp 7.13.2
- c++pp 7.13.6
- c++pp 7.13.9
- PP-PP和其他模块的集成
- PP-PP和其他模块的集成
- c++pp 7.13.8a
- 跑步( Running . pas / c / C pp )
- 跟pp模块相关的开发杂记
- 预留在PP模块里面的作用
- C++[pp]--课后练习与答案--2.6
- 《C专家编程》chapter 9中第一个习题
- (Python编程)一个简单的C扩展模块
- (Python编程)一个简单的C扩展模块
- Dissection C Chapter 2
- HUSTOJ 2867: 火车票(线段树)
- 超简单方法搭建Eclipse下的Android NDK
- 虚函数 纯虚函数 抽象类 接口
- 221. Maximal Square
- 7.16第一题“竞赛排名”
- C++ PP chapter Ⅶ C++的编程模块
- opencv之离散傅里叶变换(DFT)
- Dictionary抽象类源码解析
- js 关于BOM浏览器兼容问题 函数封装
- 生产者消费者模式
- Android中pendingIntent的深入理解
- HDU 1584 蜘蛛牌(很经典的深搜)
- sdffffffffffffffffffffffffffffffffffff
- 《leetCode》:Product of Array Except Self