C++学习笔记(4)——结构化程序设计
第五章 结构化程序设计之一
❤ 2018.5.1
今天是五一劳动节哈哈哈
○ 结构化程序设计方法
○ 函数的定义和调用
♣ 将数据提炼出来形成变量,这种做法叫做数据参数化。
○ return语句
○ 函数的声明
❤2018.5.9
○ 数据的管理策略
○ 变量的作用域
♣ 函数定义和函数声明是不一样的,声明可以不定义。
○ 全局变量可以通过外部声明语句延伸作用域
○ 重名变量的局部优先原则
我有个问题:主函数调用的函数里可不可以直接用主函数里声明的局部函数?前面好像说需要通过形参进行传递,所以应该是不能吧。。。
❤ 2018.5.12
○ 程序代码和变量的存储原理
○ 动态内存分配
○ 函数指针
○ 函数间参数传递的3种方式
○ 值传递
○ 引用传递
定义形参时在前面加 &(引用说明符) 就定义了一个引用变量。
○ 指针传递
形参前面加 * (星号) 定义成指针变量
○ 在函数间传递数组
例:
❤ 2018.5.26
〇 C++源程序的多文件结构
○ 声明外部函数与外部全局变量
♣ 外部函数声明可以不加extern ,外部全局变量声明必须加extern且不可以初始化。
♣ 静态局部变量的声明和初始化语句只在程序初始化时被执行一次,后面即使多次调用该函数也不会被重新声明及初始化,而是会保留上一次函数运行后的数值。
○ 头文件
♣ 所以说头文件中可以只有声明而没有定义,定义都在和头文件同名的cpp文件里。
〇 编译预处理指令
♣ 无参宏主要用来定义符号常量
♣ 注意宏定义里运算符优先级的问题(见上)
○ 空宏和宏删除
○ 条件编译指令
〇 几种特殊形式的函数
○ 带默认形参值的函数
○ 重载函数
○注意事项
○ 内联函数
○ 注意事项
○ 主函数main
○ 注意
♣ 因为VS同时支持ANSi和unicode两种编码,使用_tmain可以方便的在两种编码中切换(不懂。。。)
♣ 加system("pause");可以暂停程序运行,查看运行结果。
♣ 当开发windows图形界面程序时,要把主函数改成WinMain()或者tWinMain()。
○ 递归函数
○ 递推与递归
♣ 把一个具体的问题用代码表示出来,感觉好神奇!
〇 系统函数
○ 数学公式函数
○ 动态内存分配函数
○ 命名空间
♣ ::作用域分辨符
○ C++语言中的系统函数
○ C++语言的系统类库
〇 自定义数据类型
♣ 可枚举:大概意思就是有有限个能被列出来,比如一周有星期一到星期日,就是可枚举的(?)
○ 联合体类型
○ 联合体类型定义:
♣ 联合体也叫共用体
○ 结构体类型
○ 结构体指针变量
♣ 这个的意思是:访问指针变量p所指向的结构体变量成员“ID”