C++笔记总结(第三周)

自定义函数 VS 宏函数

#define ADD(a,b) a + b //宏函数

int add(int a,int b)
{
    return a + b;
}//自定义函数

int main()
{
    cout << add(5,6) << endl;//通过函数名找到函数存放的位置,给形参分配空间,传参,执行函数体里语句,函数返回,释放空间
    
    add(6,5);
    add(6,5);

    //cout << ADD(6,5) << endl;//a + b;
    
    return 0;
}

宏函数:编译时间换取内存空间
内嵌(联)函数:内存空间换取运行时间:inline修饰的函数
inline:将函数体里语句内嵌到函数调用的地方,省去了函数调用、返回等操作,提高了运行效率

C语言:凡是用inline中修饰函数都会被内嵌到函数调用的地方; 注意事项:短小(简单)且不被频繁调用的函数
C++: 编译器做判断(用inline修饰的函数不一定被内嵌到调用的地方) 限制条件:inline修饰的函数不能出现以为语句

函数重载

  1. 函数重载:定义函数是,可以使用已存在函数名,但是该函数的形参的个数或者顺序或者类型与已存在函数不同;(返回值不能作为重载条件)

  2. 函数重载的条件?函数的形参的个数或者顺序或者类型与已存在函数不同

  3. 注意事项:c++允许函数形参表中有默认参数,会破坏重载条件 (默认参 数语法:一个参数为默认参数,那么它后面的参数必须全部为默认参数)

    函数的形参占位符:int add(int a, int){}

int add(int a, int b, int c)
{

}

int add(int a, int b, char c)  
{

}

结构体(struct)

  1. 结构体:封装不同类型的数据(将不同类型的数据整合在一起,用同一种数据类型表示)

  2. C语言的结构体:1.定义结构变量必须加struct关键字;2.只能存放变量,不能存放函数;
    在这里插入图片描述
    在这里插入图片描述

  3. class 与 struct的区别:默认权限不同,class默认是private, struct默认是public

  4. C++对struct的升级:1.定义变量的升级:不用加struct关键字 2.可以保存函数 3.可以在结构体里加入权限修饰符;4. 可继承、可多态;5.strcut == class(类)

string

string:可变长的字符串
在这里插入图片描述

字符访问:
在这里插入图片描述

string特性:
在这里插入图片描述
在这里插入图片描述
空字符的判断:
在这里插入图片描述

赋值:
在这里插入图片描述

连接:
在这里插入图片描述

比较:
在这里插入图片描述
查找:
在这里插入图片描述

迭代器

迭代器:遍历的容器(string\vector)
迭代器就是指针的泛化
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值