C++小白Python选手2小时入门C++

学习链接:C++入门/2小时从C到C++快速入门(2018,C++教程)

C++在C语言的基础上增加了面向对象和通用算法语言特征。

  1. C++头文件不必是.h结尾,C++头文件举例:cmath、cstdio
  2. 注释:单行//、多行/**/
  3. 为了防止名字冲突(同名),引入名字空间namespace,::运算符限定某个名字属于哪个名字空间。不指定时为全局名字空间。
  4. 输入输出流库(头文件iostream),cout <<和cin >>分别表示标准流输出输入流对象。标准库中的名字都属于标准名字空间std。endl表示换行。
  5. 变量“即用即定义”,且可用表达式初始化。
  6. 程序块{}内部作用域可定义域外部作用域同名的变量,在该块里就隐藏了外部变量。
  7. for循环语句可以定义局部变量。
  8. 访问和内部作用域变量同名的全局变量,用全局作用域限定::
  9. 引用类型:一个变量是另一个变量的别名。引用变量经常用作函数形参,对形参的修改就是对实参的修改。&a表示取a的地址。*x表示简引用运算符。当实参占用内存较大时,用引用代替传值(需要复制)可提高效率,如果不希望因此无意中修改实参,可以用const修饰符。
  10. 对于不包含循环的简单参数,用inline关键字声明内联函数,编译器将内联函数调用用其代码展开,称为“内联展开”,避免函数调用开销,提高程序执行效率。
  11. try-catch处理异常。
  12. 默认形参一律靠右。
  13. 函数重载:允许函数重名,但要求形参不一样。不能根据返回类型区分同名函数。
  14. 运算符重载
  15. template函数,template
  16. 动态内存分配,关键字new和delete可以对类对象调用初始化构造函数或销毁析构函数(virtual ~f())。
  17. 类struct,包含数据和函数方法用于访问或修改类变量(对象)。*this自引用。
  18. 构造函数和析构函数。
    • 构造函数是和类名同名且没有返回类型的函数,在定义对象时会自动被调用,而不需要再单独调用专门的初始化函数如init(类似python的init函数)。
    • 析构函数是在类对象销毁时被自动调用,用于释放该对象占用的资源,如释放占用的内存,关闭打开的文件。
  19. 控制访问、类接口。将关键字struct换成class。
    • class定义的类的成员默认都是private,外部函数无法通过类对象成员或类成员函数访问。
    • 接口:public的公开成员(一般是成员函数)称为这个类的对外接口,外部函数只能通过对这些接口访问类对象。private等非public的包含内部细节,不对外公开,从而可以封装保护类对象。
  20. 拷贝:拷贝构造函数、赋值运算符。硬拷贝,m和s指向同一块内存。
    • 拷贝构造函数:定义一个类对象时用同类型的另外对象初始化。如student m(s)
    • 赋值运算符:一个对象赋值给另一个对象m=s
  21. 类体外定义方法(成员函数),必须在类定义中声明,类体外要有类作用域::,否则就是全局外部函数了
  22. 类模板:将一个类变成“类模板”或“模板类”
  23. typedef 类型别名:typedef int INT
  24. string 类模板Vector
  25. Inheritance继承(Derivation派生):一个派生类,从1个或多个父类/基类继承,即继承父类的属性和行为,但也有自己的特有属性和行为。派生类的构造函数只能描述自己的成员和其直接基类的初始化,不能去初始化基类的成员。
  26. 虚函数Virtual Functions和多态性。派生类的指针可以自动转化为基类指针,用一个指向基类的指针分别指向基类对象和派生类对,并2次调用
  27. 多重继承
  28. 纯虚函数和抽象类。函数体=0的虚函数称为“纯虚函数”。包含纯虚函数的类称为“抽象类”。
    • 抽象类不能实例化,不能定义抽象类的对象(变量)。
    • 从抽象类派生的类型如果没有继承实现所有的纯虚函数,则仍然是“抽象类”。
  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值