zoukankan      html  css  js  c++  java
  • C++ 点滴 (二)

    1.typedef 不仅可以给类型起别名,也可以简化一些比较复杂的类型申明,比如typedef int byte_4,代表给int起了个别名为byte_4,在代码中可以使用byte_4来代替int;又比如typedef bool Func(const string&,const string&);使用Func来代表一个函数申明,该函数返回bool型,包含两个const string& 类型参数。

    2.针对重载函数的函数指针需要精确匹配,否则会报错;

    3.像数组一样,函数不能直接作为形参,但是可以使用函数指针来传递函数;

    4.局部静态对象,在函数第一次调用时创建,函数结束时并不销毁它,而是在整个应用结束时才销毁;

    5.C++ 11引入位置返回类型,可以将函数的返回类型放在形参列表后面,但与形参中间隔了一个->符号,比如 auto test(int & a) ->bool等同于 bool test(int& a);

    6.形式参数列表中,const和&对参数的限制可以理解为:如果函数的参数不需要拷贝,则用&来引用,比如iostream类型的变量不能被拷贝,所以形式参数中但凡使用io的,则只能使用&来限制参数,const代表函数体内对参数不会做更改,如果有更改,编译器会报错。

    7.struct和class都可以用来定义一个类,区别在于如果没有存在public或者private等修饰符,类成员的默认修饰不一样。对于struct而言,默认都是public,对于class而言,都是private的。

    8.友元friend简单来说,就是允许非类中的函数或者其他类来访问类中非公共的成员,具体用法就是在类中以friend开头申明类或者函数。

    9.编译器在编译C++代码时是分阶段处理的,先处理申明,再处理定义。所以在类的成员函数中使用后申明的成员变量时,编译器不会报错。

  • 相关阅读:
    可在广域网部署运行的QQ高仿版 -- GG叽叽(源码)
    区间合并
    二分查找算法模板
    神经网络详解(RNN/LSTM)
    反向传播算法推导过程(非常详细)
    机器学习-回归问题(Regression)
    从RNN到LSTM
    神经网络浅讲:从神经元到深度学习
    部署高并发python后端(Systemd+Nginx+Gunicorn+Gevent+Supervisor+Flask )
    产品笔记 | 软件版本号—规范与命名规则
  • 原文地址:https://www.cnblogs.com/chyshx/p/14415197.html
Copyright © 2011-2022 走看看