c++期末复习知识点最全整理
目录总览
?? c++知识点复习最全整理(一)??
?? c++知识点复习最全整理(二)??
?? c++知识点复习最全整理(三)??
?? c++知识点复习最全整理(四)??
?? c++知识点复习最全整理(五)??
?? c++知识点复习最全整理(六)??
?? c++知识点复习最全整理(七)??
?? c++知识点复习最全整理(八)??
一、?介绍对象技术
1.简单输入输出
2.c++标准库
3.内联函数
4.c++关键字
5.引用和引用形参
6.参数传递
7.一元作用域运算符::
8.函数重载
9.函数模板
一、第15章 介绍对象技术
1.简单输入输出
//求a和b两个数之和。// 求两数之和 ? ? ? ? ? ? ? ? ? ? (本行是注释行)#include ? ? ? ? ?//预处理命令using namespace std; ? ? ? ? //使用命名空间std int main( ) ? ? ? ? ? ? ? ? ? ? ? ?//主函数首部{ ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //函数体开始 ? ? int a,b,sum; ? ? ? ? ? ? ? ? //定义变量 ? ? cin>>a>>b; ? ? ? ? ? ? ? ?//输入语句 ? ? sum = a + b; ? ? ? ? ? ? ? ? ? //赋值语句 ? ? cout<<″a + b =″<
2.c++标准库
C++标准库头文件 :省略了后缀.h
常用C++标准库头文件 : 标准输入输出函数的原型 : 数学库函数的原型 : 时间及日期函数原型以及类 : 测试字符属性函数原型 : 字符串处理函数的原型 : 文件操作函数原型 : 包含string类的定义
其实引用头文件还可以偷懒:
#include//万能头文件 几乎包含所有的头文件
3.内联函数
在函数定义前面加关键字inline,相当于添加了函数的代码副本,再使用函数时,直接调用,减少了调用时间,相当于以空间换时间。 定义 : 在定义函数前面添加inline
inline void display( int a ){}
inline 命令只是建议性的,不是强制性的。
当声明了inline的函数中有循环语句、switch语句或有递归定义,则函数不会进行代码置换。即此时inline 无效。
inline只用在函数代码很短的情形。
如果违背了上述注意事项中的任一项,编译程序就会无视关键字inline的存在,像处理一般函数一样处理,不生成扩展代码。
因此,只有很简单而使用频率很高的函数才被说明为内联函数。
内联函数会扩大目标代码,使用时要谨慎。
4.c++关键字
在程序中要避免使用与关键字相同的变量或函数。
5.引用和引用形参
int ? ? ? //声明b是a的引用(别名)
b并没有重新在内存中开辟单元,只是引用a的单元。
a与b在内存中占用同一地址,即同一地址两个名字。
int n=55;int main(){ int n=5; cout<<::n<<''; return 0; } //结果55
当局部作用域有与全局变量同名的变量,当访问这个变量时,默认会访问局部作用域的变量。
如果要访问同同名的全局变量,需要加一元作用域运算符
8.函数重载
同名函数满足(必须是同名函数才能重载),const也可以作为重载函数的区分呀(这个到后面的更新中会说明)
以下三个特点只要满足其中之一就是重载函数,但必须保持重载函数同名
形参个数不同
形参类型不同
形参顺序不同
9.函数模板
函数处理的功能基本上一样时,但是参数的类型不一样,就会很苦恼,这时候函数模板就派上用场了。
语法格式:
template //T代表一个待定的类型,会改变为传入的参数的类型返回值类型 函数名(参数列表){函数体}
应用场景:
除函数处理的数据类型不同外,其它均相同
函数体相同,参数个数相同,可定义函数模板
下面定义了求最大值的函数模板,可以参考一下。
#include using ?namespace ?std;template ? ? // 模板声明:T是虚拟的类型T ?max( T a, T ?b, T c) ? ? ? ? ? ?//定义通用的函数{ ? ?T ?x=a; ? ?if (x版权声明:本文为m0_67401920原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。原文链接:https://blog.csdn.net/m0_67401920/article/details/125348932【文章由韩国大带宽服务器 http://www.558idc.com/lg.html处的文章,转载请说明出处】