基础-求职面试-C++基础总结

原创 2016年08月31日 14:56:14

个人理解,相比于C语言,C++语言主要是采用设计思维更好的使用类进行继承、封装、多态实现面向对象程序设计。

C++基础主要设计到变量、常用关键字、类中一些函数(构造函数和非构造函数)、多态性质、模板。使用过程中经常考虑内存分配、泄露、多线程方面的知识。当然STL作为C++的标准容器,一些常见的vector、set、unordered_set、map、unordered_map的基本用法可以使程序变得简洁。

1.变量

变量存储主要分为静态的和动态的。很好理解,静态的就是在程序运行时,静止在那,也不释放。动态的可能回随着程序释放。相比而言,静态分配更耗资源。

关于修饰变量的关键字有auto、static、register、extern。auto是自动缺省的,表示动态存储;static表示静态存储;register寄存器存储;extern表示外部存储。


说到了主要分为静态存储和动态存储,那主要都存储到哪些地方呢?

C语言的内存分配地点主要是栈、堆、全局区(静态区)、字符串常量存储区、程序代码区。我们可以根据实际的变量上下文判断代码的存储位置。

C++语言的内存分配地点主要是栈、堆、自由存储区、全局区(静态区)、常量存储区。

注:两者的详细差别请参照文章:http://blog.csdn.net/luyuncsd123/article/details/9079147


2.关键字

关键都是用来做修饰用的。主要的关键字考查在内存相关的(new、delete、malloc、free、智能指针auto_ptr、sizeof等)、const、define、static、union、volatile、explicit等。


3.类

类主要对封装、继承、多态的概念理解。主要设计到变量成员和成员函数(构造函数、析构函数)的理解。

4.模板


模板通常有两种形式函数模板和类模板。详细可见下文。

http://www.cnblogs.com/gw811/archive/2012/10/25/2738929.html


5.多态性质

推荐几篇文章:
1.http://www.oschina.net/translate/cpp-virtual-inheritance
2.http://blog.csdn.net/u014744118/article/details/51020480
3.http://blog.csdn.net/haoel/article/details/1948051/


6.内存泄露



7.STL

C++基础知识汇总

C++面试题——基础概念篇 唐璐 http://blog.csdn.net/worldwindjp/         面试C++程序员的时候一般都是3板斧,先是基础问答,然后一顿...
  • weiyuefei
  • weiyuefei
  • 2016年08月01日 20:59
  • 1107

[求职面试][基础]基础问题汇总

取模和取余的区别 取模 5 mod 2 = 1 -5 mod 2 = -5-2floor(-5/2) = -5-2(-3) = 1 当除数与被除数的符号相同时,rem和mod的结果是完全相同的...
  • fatigue
  • fatigue
  • 2015年01月06日 12:30
  • 183

对C++基础知识的总结(主要针对笔试面试)

C++的魅力在于其丰富多彩的性格特征:其行为方式既可以像C一样面向过程也可以面向对象(专注Class 很多年)、封装性(城府很深)、继承性(富二代)、多态性(多重人格/精神分裂/变态),谜一样的男神,...
  • black_yu
  • black_yu
  • 2016年03月19日 17:37
  • 1381

C++基础知识易错点总结(3)

第一部分 1. 异步通信和同步通信的区别? 同步通信要求接收端时钟频率和发送端时钟频率一致,发送端发送连续的比特流;异步通信不要求接收端时钟和发送端时钟同步,发送端发送完一个字节后,可以经过任意长的...
  • fly_yr
  • fly_yr
  • 2016年03月02日 21:50
  • 613

C/C++基础知识总结<一>

1. 分配内存的方法\quad面试中比较见问的一个问题。 \quad注意: \qquad1. 只有calloc函数会将分配内存初始化为0 \qquad2. new是C++独有的,其是运算符,而...
  • taoyanqi8932
  • taoyanqi8932
  • 2017年02月24日 18:27
  • 1441

学习心得-------计算机网络基础(1)

从复试结束之后就忙于奔波,甚是乏累,从沈阳来到北京就忙于找工作,少于看书,昨天终于决定入职,入职之后,做的方向是网络质量检测,APM,应用性能管理,给我的产品说明,只是寥寥几个字,各种术语,百度网络质...
  • Hearthougan
  • Hearthougan
  • 2016年04月21日 17:37
  • 1129

Android程序设计基础--总结

Android App程序主要由4种类型组成:Activity(活动)、Service(后台服务)、Content Provider(内容提供商)、Broadcast Receiver(广播接收端) ...
  • dy3200
  • dy3200
  • 2017年08月30日 16:00
  • 148

JavaEE基础10个小总结

1.JavaScript(DOM) JS是脚本语言,不是编程语言,不需要编译,浏览器会自己识别。 JavaScript组成 ECMAScript:核心,定义JS的基本语法和类型等。 BOM:浏览器对...
  • zqqiang0307
  • zqqiang0307
  • 2016年12月19日 23:48
  • 336

C#基础总结1

一、注释 C#中的3中注释符 1)单行注释// 2)多行注释/*要注释的内容*/ 3)文档注释///(用来说明类或方法的作用增加代码的可读性) 二、vs中常用的快捷键 ctrl+k+d:快速对齐代码 ...
  • qq_36437620
  • qq_36437620
  • 2017年06月30日 16:38
  • 106

【C#基础】基础总结

刚开始接触C#语言,和之前学过的VB语言相比,还是存在一些相同之处和不同之处的。刚刚看完了一部分视频。视频中都是对基础知识的讲解。老师很逗,讲解的很细致。         1、.net是什么?:.ne...
  • qq_26545305
  • qq_26545305
  • 2015年12月06日 21:20
  • 1138
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:基础-求职面试-C++基础总结
举报原因:
原因补充:

(最多只允许输入30个字)