重温c++(c到c++)

重温c++(c到c++)

bool类型
ture为真,flase为假,1为真,0为假,大小为一个字节。

引用& 引用 取别名 必须要初始化
取别名,就是对一个变量取别名

int a=32int &b=a;//那么这个b就是a的别名
b=66//则a的值也会改变为66	

其意思就是a是x的别名,b是y的别名。
指针和引用的区别:
1.指针是一个有内存的实体,引用只是一个外号。
2.引用是常量,常量必须初始化。
3,指针可以赋空值。
4,指针的内存唯一的,引用不唯一。

内联函数
通过内存膨胀来减少函数的跳转,空间换时间而函数是时间换空间。
在函数前面加上inline就是内联函数
inline void fun(){}
如果出现函数体的代码过长,如果有循环,不建议使用内联函数。
建议使用内联函数:简单的赋值语句,简单的返回语句(函数体少,使用评率高)

函数重载
构成重载:函数名一致,函数参数不同,位置不同。

int arr(int a,int b)
{
  return a+b;
  }

void arr(double a,double b)
{
    printf("%lf",a+b)
 }

这个arr函数构成函数重载。
但是值得注意的是,有的时候,函数重载也容易构成二义性的问题。

void a(int a){};
void a(float){};//这样就构成了二义性的问题

解决办法,直接在输入的时候写上参数类型,如a(1.36f);

函数的缺省参数(也就是形参有初始化的值)
1.参数的缺省只能由后往前缺省,依次缺省,不能由前往后

 void fun(int a,int b=2int c=3);//可以这样写
 void fun  (int a=1,b=2,c)//不可以这样写

2.参数的缺省,只有定义的情况下可以直接写在定义,如果有声明,只要在声明中缺省,定义不需要

3,参数的缺省如果和重载混合一起使用,一定要注意因为缺省参数导致的二义性。

new:是用来申请堆区内存的。堆区内存:是我们自己申请出来的内存所以要自己释放。
delete p:用来释放堆区内存。
定义:

int *p=new int;//申请一个int类型大小的堆区内存
    *p=8;
    cout<<*p<<endl;
    
    int *q=new int(1010);//直接初始化为int的值为1010
    cout<<*q<<endl;
    
    int *e=new int[10];//申请十个int类型大小的堆区空间
    for (int i=0; i<10; i++)
    {
        e[i]=e[i]+1;
    }
    for(int i=0;i<10;i++)
    {
        cout<<e[i]<<endl;
    }
    
    delete []p;//释放堆区空间;
    e=NULL;
    
    return 0;

memset();用来初始化内存的;
例如:

int *q=new int[10];
    memset(q,0,sizeof(int)*10);//括号里分别是指针,0,字节大小。
    for(int i;i<10;i++)
    {
        cout<<*(q+i)<<endl;
    }
    return 0;

注意:写完代码之后指针指针要赋空值。
野指针有指向,空指针没指向。

命名空间:再文件的基础上对文件里面的内容再次分类
定义:
namespace 空间名字 {成员};
例如:

namespace aaa
    {
        void fun()
        {
            cout<<"打开了赛博朋克2077"<<endl;
        }
    };
    
    using namespace aaa;//打开命名空间,这样外部才能访问命名空间里面的内容
    using aaa::fun();

::作用域符号,就是用来说明某个成员是属于某个事物;
当有重定义函数时就可以用::
不能在函数和类中定义。

string类类型:存字符

string str1="sadfhadhs";
str.at(i);//返回下标为i的元素的引用
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值