C++知识总结

1.什么是C++?

c++是在c语言的基础上开发的一种面对对象的编程语言,它支持多种编程范式:面对对象编程、泛型编程和过程化编程。 应用十分广泛,常用于系统,引擎等的开发,另外还支持类、封装、重载、多态等特性。

2.C和C++的区别

  • C语言是面向过程的语言,是一个结构化的语言,而c++是面向对象的语言
  • c和c++动态管理内存的方法不同,c是使用malloc/free函数,而c++除此之外还有new/delete关键字。
  • c++中有类,但是c语言中是没有这个概念的,而struct在C语言和c++中都可以正常使用,struct和类的不同是struct的默认访问权限是public的,而类默认的权限private的。
  • c++是一种强类型语言,比起C语言c++有着非常严格的数据类型检测

3.什么是引用

  • 引用是对象的另一个名字,在实际程序中,引用主要用作函数的参数来使用。

4.常量与变量有哪些区别?

  • 常量是不可以改变值的量,变量是可以改变值的量。
  • 常量在定义时必须初始化,变量可以在定义时不初始化。
  • 常量不可以寻址,它的地址不允许赋给非常量指针,变量可以寻址。
  • 常量有相对较高的编译效率。

5.自增自减前操作与后操作的区别(即i++与++i的区别)

  • 前自增自减操作的优先级大于赋值运算符(=),而后自增自减的优先级小于赋值运算符
  • 前自增自减运算是先增减在进行运算,后自增自减是先参与运算再进行自增自减。
    例如:
a= ++i; //i先自增1,然后再赋给变量a

b = j++;//将j先赋给变量b,然后j再自增1

6.变量有哪几种存储类型?

  • 在c++中,变量的存储类型有4种。分别是:
  • 自动类型变量(auto) 自动类型只能是局部类型的变量,属于动态存储类型
  • 静态类型变量(static) 在程序运行中始终时候占用一个寻存储空间。使用局部静态变量是为了在下次调用该函数时,能使用上次调用后得到的该变量的值。
  • 寄存器类型变量(register) 属于动态存储类型,编译器不为该类型变量分配内存空间,而是直接使用CPU的寄存器。主要用于控制循环次数等不需要长期保存值的变量。
  • 外部类型变量(extern) 必须是全局变量,在c++中,有两种情况需要使用。一种是在同一源程序文件中,党当在全局的定义之前使用该变量时,在使用前要对该变量进行外部类型变量声明。另一种是当程序有多个文件组成时,若在一个源文件中要引用在另一个源文件中定义的全局变量,则在引用前需要对所引用的变量进行外部声明。

7.while循环与do-while循环的区别?

  • while循环与do-while循环的主要区别在于,如果循环条件语句为false,while语句不会执行循环,而do-while循环都会先执行一次循环在进行条件判断。

8.什么是递归?

  • 递归作为一种算法在程序设计语言中广泛使用,是指函数/过程/子程序在运行的过程中直接或间接调用自身而产生的的重入现象。一个过程或函数直接或间接调用自己本身,这种过程或函数叫递归过程或递归函数。

9.什么是宏定义?

  • 宏定义是c++的预处理命令之一,它是一个替换操作,不做计算和表达式求解,不占用内存和编译时间。

10.include的用法?

  • include有两种使用方式,#include<>和#include" “,其中#include<>是使用标准头文件,#include” "是使用自定义的头文件。

猜你喜欢

转载自blog.csdn.net/weixin_43159569/article/details/84860626