C++ cheatsheet

有些细枝末节的东西面试可能会问?
  • 数据类型:
    1169117-20171204125007919-956109839.jpg
    bool(1bit),char(1byte,8bit,0-255),int(4bytes)
    float(4bytes),double(8bytes),void,wchar_t(4bytes)
    修饰:signed unsigned(不改变字节数)
    short(二分之一)
    long(加倍)

    类 class

    static: 修饰局部变量,可以将它变成全局变量
    修饰全局变量,可以让他在文件外无效
    修饰类,可以让类的所有对象共享

  • public private protected的区别
    private : 外部不可访问 不可查看
    protected: 子类可以访问

  • 类的构造器,三种继承方式:三种访问属性的变量继承也不同
  • 类的构造器:public一个与类同名的函数

  • 静态成员:生成一个实例之后,只有一个副本,经常用于统计生成了几个这样的类
    例如:static int a =1;

  • 静态成员函数:没有对象也可以调用,他本身只能调用静态成员
    也就是上面说的static int a;

  • 析构函数:~开头,不会返回任何值,故而一定是void类型,也没有任何入参
    在对象实例销毁的时候执行该函数

  • 虚函数:子类的实例调用函数时,会忽略虚函数,转而调用子类中的同名函数。
  • 纯虚函数:不准备调用基类中的这个函数,想什么都不写

C++引用 C++ refrence

  • 不可以为空
  • 引用不可以变更,也就是说,引用一旦指向一个变量就不可以更改了,
    而指针可以随时更改指向的对象
  • 引用在创建的时候就要初始化

例如: int& r = i;//这样r就指向了i

通常,引用用来作为函数的入参或者返回

好处是:

  • 如果函数运行期间,形参的值改变了,并不会回传
    给实参。如果入参使用引用,那么改变形参的量也可
    以改变实参。(也就是说,如果引用的对象发生改变,不会影响函数运行。而如果函数运行完毕,会改变引用的对象。这是一种单向的工作方式,更稳定,用指针就不会有这种优点)
//    vector初始化
    vector<int> vec_1 = {2, 5, 9};

//    reverse vector
    reverse(vec_1.begin(), vec_1.end());

//    遍历vector
    for(auto k:vec_1){
        cout<<k<<endl;
    }
    for(auto bg = vec_1.begin();bg!=vec_1.end();bg++){
        cout<< *bg<<" ";
    }

//    指针,数组指针,指针数组
//    空指针
    int* ptr1 = nullptr;
    int shuzu[3] = {2, 5, -1};
//    数组指针
    int* shuzu_ptr = shuzu;
//    cout<< shuzu_ptr << endl;
//    指针数组
    int* ptr_shuzu[3] = {shuzu_ptr};
//    cout << *ptr_shuzu[0] << endl;

转载于:https://www.cnblogs.com/theodoric008/p/7968607.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值