欢迎来到天天文库
浏览记录
ID:5525639
大小:220.00 KB
页数:52页
时间:2017-11-12
《3-基于过程的程序设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、基于过程的程序设计雷小锋13685124458leiyunhui@gmail.com内容纲要一、基于过程的程序设计概述二、函数三、域和生命期四、函数模板五、使用泛型高级话题三、域和生命期程序的多文件结构可以在多个文件之间共享函数和变量解决办法:函数声明和变量声明《extern》返回类型函数名(《形参表》);extern数据类型变量名;三、域和生命期可以在多个文件之间共享函数和变量解决办法:函数声明和变量声明//文件A.cppfloatprice=2.3;//定义voidprint(){cout<2、oidprint();externfloatprice;intmain(){price=3.1;print();}三、域和生命期在定义了一个函数或变量之后,则在所有的源代码文件中都可以使用它,只要在使用之前声明一下。问题:能否得出以下结论三、域和生命期客观世界中的任何事物,其存在于一定的时间和空间范围空间范围:作用域,简称域时间范围:生命期超出自身的作用域和生命期就不可访问结论:定义了一个函数或变量之后,则在所有的源代码文件中都可以使用它,只要在使用之前声明一下,对吗?三、域和生命期作用域:简称域,指标识符能够被使用的空间范围,只有在作用域内标识符才可以3、被访问(称为可见)标识符作用域的起点均为标识符说明处生命期:标识符所代表的对象存在的时间范围三、域和生命期—函数作用域:函数在定义或声明之后,就在其所在代码文件中可见可用⇒函数具有文件作用域,又称全局域生命期:函数驻留在代码区,程序开始运行时载入,程序执行结束释放⇒函数具有与程序运行期等长的寿命,称为具有静态生命期三、域和生命期—变量(3.1)变量的作用域有的变量偏安一隅——局部域有的变量名扬天下——全局域(3.2)变量的生命期有的变量寿与天齐——静态生命期有的变量转瞬即逝——局部生命期有的变量命悬人手——动态生命期(3.3)名字空间namespace(4、3.1)变量的作用域变量的作用域分析函数内部的变量只在函数范围内可见函数外部的变量在文件A.cpp中都可见//文件A.cppfloatprice=2.3;//定义voidprint(){floatprice=3.1;cout<5、3b=535a=3b=5a=5b=3输入两数,按从大到小的顺序保存,并输出结果。结果栈t=3intmain(){inta,b;//具有函数域cout<<"输入两整数:"<>a>>b;cout<<“a="<=a){intt;//具有块域t=a;a=b;b=t;//交换a,b的值}cout<<"a="<6、地方不可见。【块域举例】编程完成两个整数的交换。intmain(){inta=10,b=20;cout<7、和函数声明域函数声明域注意:函数声明与函数定义的区别;在函数声明时,其中形参作用域只在声明中,即作用域结束于声明的右括号;由于形参不能被程序的其他地方引用,所以通常只声明形参个数和类型,形参名省略。(3.1)变量的作用域—全局域全局域——全局变量又称文件作用域定义在所有函数之外的标识符,其作用域从定义处开始,直到整个文件结束,即全局域文件中定义的全局变量和函数都具有全局域【全局域举例】编程完成两个整数的交换。inta=10,b=20;intmain(){cout<8、<
2、oidprint();externfloatprice;intmain(){price=3.1;print();}三、域和生命期在定义了一个函数或变量之后,则在所有的源代码文件中都可以使用它,只要在使用之前声明一下。问题:能否得出以下结论三、域和生命期客观世界中的任何事物,其存在于一定的时间和空间范围空间范围:作用域,简称域时间范围:生命期超出自身的作用域和生命期就不可访问结论:定义了一个函数或变量之后,则在所有的源代码文件中都可以使用它,只要在使用之前声明一下,对吗?三、域和生命期作用域:简称域,指标识符能够被使用的空间范围,只有在作用域内标识符才可以
3、被访问(称为可见)标识符作用域的起点均为标识符说明处生命期:标识符所代表的对象存在的时间范围三、域和生命期—函数作用域:函数在定义或声明之后,就在其所在代码文件中可见可用⇒函数具有文件作用域,又称全局域生命期:函数驻留在代码区,程序开始运行时载入,程序执行结束释放⇒函数具有与程序运行期等长的寿命,称为具有静态生命期三、域和生命期—变量(3.1)变量的作用域有的变量偏安一隅——局部域有的变量名扬天下——全局域(3.2)变量的生命期有的变量寿与天齐——静态生命期有的变量转瞬即逝——局部生命期有的变量命悬人手——动态生命期(3.3)名字空间namespace(
4、3.1)变量的作用域变量的作用域分析函数内部的变量只在函数范围内可见函数外部的变量在文件A.cpp中都可见//文件A.cppfloatprice=2.3;//定义voidprint(){floatprice=3.1;cout<5、3b=535a=3b=5a=5b=3输入两数,按从大到小的顺序保存,并输出结果。结果栈t=3intmain(){inta,b;//具有函数域cout<<"输入两整数:"<>a>>b;cout<<“a="<=a){intt;//具有块域t=a;a=b;b=t;//交换a,b的值}cout<<"a="<6、地方不可见。【块域举例】编程完成两个整数的交换。intmain(){inta=10,b=20;cout<7、和函数声明域函数声明域注意:函数声明与函数定义的区别;在函数声明时,其中形参作用域只在声明中,即作用域结束于声明的右括号;由于形参不能被程序的其他地方引用,所以通常只声明形参个数和类型,形参名省略。(3.1)变量的作用域—全局域全局域——全局变量又称文件作用域定义在所有函数之外的标识符,其作用域从定义处开始,直到整个文件结束,即全局域文件中定义的全局变量和函数都具有全局域【全局域举例】编程完成两个整数的交换。inta=10,b=20;intmain(){cout<8、<
5、3b=535a=3b=5a=5b=3输入两数,按从大到小的顺序保存,并输出结果。结果栈t=3intmain(){inta,b;//具有函数域cout<<"输入两整数:"<>a>>b;cout<<“a="<=a){intt;//具有块域t=a;a=b;b=t;//交换a,b的值}cout<<"a="<6、地方不可见。【块域举例】编程完成两个整数的交换。intmain(){inta=10,b=20;cout<7、和函数声明域函数声明域注意:函数声明与函数定义的区别;在函数声明时,其中形参作用域只在声明中,即作用域结束于声明的右括号;由于形参不能被程序的其他地方引用,所以通常只声明形参个数和类型,形参名省略。(3.1)变量的作用域—全局域全局域——全局变量又称文件作用域定义在所有函数之外的标识符,其作用域从定义处开始,直到整个文件结束,即全局域文件中定义的全局变量和函数都具有全局域【全局域举例】编程完成两个整数的交换。inta=10,b=20;intmain(){cout<8、<
6、地方不可见。【块域举例】编程完成两个整数的交换。intmain(){inta=10,b=20;cout<7、和函数声明域函数声明域注意:函数声明与函数定义的区别;在函数声明时,其中形参作用域只在声明中,即作用域结束于声明的右括号;由于形参不能被程序的其他地方引用,所以通常只声明形参个数和类型,形参名省略。(3.1)变量的作用域—全局域全局域——全局变量又称文件作用域定义在所有函数之外的标识符,其作用域从定义处开始,直到整个文件结束,即全局域文件中定义的全局变量和函数都具有全局域【全局域举例】编程完成两个整数的交换。inta=10,b=20;intmain(){cout<8、<
7、和函数声明域函数声明域注意:函数声明与函数定义的区别;在函数声明时,其中形参作用域只在声明中,即作用域结束于声明的右括号;由于形参不能被程序的其他地方引用,所以通常只声明形参个数和类型,形参名省略。(3.1)变量的作用域—全局域全局域——全局变量又称文件作用域定义在所有函数之外的标识符,其作用域从定义处开始,直到整个文件结束,即全局域文件中定义的全局变量和函数都具有全局域【全局域举例】编程完成两个整数的交换。inta=10,b=20;intmain(){cout<8、<
8、<
此文档下载收益归作者所有