c++面试(二)
1.宏参数的连接
#define CONS(a,b) (int)(a##e##b)
CONS(2,3) =>2e3 =2000
2.const
int b=10;
int c=20;
const int *a1=&b; //指针指向常量,修改指针可以a1=&c(对),但是修改指向的内容不行*a1=1(错)。
int* const a2=&b; //指针本身为常量。a2=&c(错),*a2=1(对)。
const int* const a3=&b; //双const:指针本身不能改,只想内容不能改。
3.#define: Compile-Time 止于编译期
const: Run-Time 在堆栈只分配了空间
4.const的作用
(1)定义常量。
(2)修饰函数形参。
形参为用户自定义或抽象数据类型时,应该把“值传递”改为“const &传递”,提高效率。
void fun(A a)
void fun(A const &a) //不需要产生临时对象,节省了构造、复制、析构过程的时间。但光引用可能会改变a,所以加上const。
(3)const修饰函数的返回值:
如给“指针传递”的函数返回值+const,返回值不能被直接修改,且只能赋给+const修饰的同类型指针。
(4)const修饰类的成员函数(定义体)
int GetCount(void) const;
任何不会修改数据成员的函数都应+const。
5.static有什么作用
(1)函数体内,静态变量调用过程其值不变。
(2)在模块内(函数体外),静态变量可以被模块内所有函数访问,但不能被模块外其他函数访问。 它是一个本地的全局变量。
(3)在模块内,一个被声明为静态的函数值可被这一模块内的其他函数调用。
c++面试(二)的更多相关文章
- [Java面试二]Java基础知识精华部分.
一:java概述(快速浏览): 1991 年Sun公司的James Gosling等人开始开发名称为 Oak 的语言,希望用于控制嵌入在有线电视交换盒.PDA等的微处理器: 1994年将Oak语言更名 ...
- java面试二
技术交流群: 233513714 126.什么是ORM?答:对象关系映射(Object-Relational Mapping,简称ORM)是一种为了解决程序的面向对象模型与数据库的关系模型互不匹配问题 ...
- 面试(二)---synchronized
一.前言 本来计划将ConcurrentHashMap和HashMap对比着来说下,奈何看的源码有点懵逼,我在思考思考,等等有个清晰的思路在搞起来,我们先来谈一下synchronized ...
- Android面试二之Fragment
基本概念 Fragment,简称碎片,是Android 3.0(API 11)提出的,为了兼容低版本,support-v4库中也开发了一套Fragment API,最低兼容Android 1.6. F ...
- java笔试面试二
http://www.cnblogs.com/lanxuezaipiao/p/3371224.html
- JAVA基础面试(二)
11.是否可以从一个static方法内部发出对非static方法的调用? 不可以.因为非static方法是要与对象关联在一起的,必须创建一个对象后,才可以在该对象上进行方法调用,而static方法调用 ...
- django面试二
33. django的缓存能使用redis吗?如果可以的话,如何配置? #1.安装 pip install django-redis#2.在stting中配置CACHES,可以设置多个缓存,根据名字使 ...
- java面试(二)
1.java常见的容器 几乎所有的容器都继承了Collecton接口,包括List.Set.Queue.Map List包括Vector.ArrayList.LinkedList, Set包 ...
- 写在19年初的后端社招面试经历(两年经验): 蚂蚁 头条 PingCAP
去年(18年)年底想出来看看机会,最后很幸运地拿到了 PingCAP,今日头条的 offer 以及蚂蚁金服的口头 offer.想着可以总结一下经验,分享一下自己这一段"骑驴找马"过 ...
- 面试总结——Java高级工程师(一)
一.无笔试题 不知道是不是职位原因还是没遇到,面试时,都不需要做笔试题,而是填张个人信息表格,或者直接面试 二.三大框架方面问题 1.Spring 事务的隔离性,并说说每个隔离性的区别 解答:spri ...
随机推荐
- Extjs4中用combox做下拉带图片的下拉框
今天,莫名的来个一个需求,需要做的一个下拉框中,需要有图片,这不...谷歌+度娘然后找网友,终于搞定.现在感谢这些提供资料的友友... 效果如图:
- nginx 配置多个主机
<pre name="code" class="html"> server { listen 8001; server_name localhost ...
- Tribles(概率)
Description Problem ATribblesInput: Standard Input Output: Standard Output GRAVITATION, n."Th ...
- Sumdiv(各种数学)
http://poj.org/problem?id=1845 题意:求A^B的所有约数的和再对9901取模: 做了这个学到了N多数学知识: 一:任意一个整数都可以唯一分解成素因子的乘积:A = p1^ ...
- CF 85D Sum of Medians (五颗线段树)
http://codeforces.com/problemset/problem/85/D 题意: 给你N(0<N<1e5)次操作,每次操作有3种方式, 1.向集合里加一个数a(0< ...
- Light OJ 1013 Love Calculator(DP)
题目大意: 给你两个字符串A,B 要求一个最短的字符串C,使得A,B同时为C的子串. 问C最短长度是多少? C有多少种? 题目分析: 做这道题目的时候自己并没有推出来,看了网上的题解. 1.dp[C串 ...
- 检测CPU是否支持虚拟化
一:下载检测软件 地址:http://files.cnblogs.com/hongmaju/Coreinfo.rar 二:使用方法 打开运行窗口,找到Coreinfo.exe,运行如下: 现在你要做的 ...
- 浅谈二维RMQ
针对一些二维区间最值问题,用一维RMQ来解决显然是不够的.所以,要改进算法.鉴于网上没有PASCAL版的RMQ标程与解析,所以小可在这里简单的讲一下. 核心思想和一维的一样,只是在计算区间时略有不同. ...
- 一个js变量以及其作用域的源码示例
今天遇到了一个问题,抽象出来的代码如下: var zoom=13; function setZoom(){ zoom=14; } function displayZoom(){ this.setZoo ...
- python daemon化你的程序
在之前的树莓派网关项目中遇到了这样一个问题,由于要把网关写的Server持续运行,尤其是要加电自动开启.发现ssh登录开启服务程序之后,当把pty退出时Server端自动断开了,这里想到的APUE中第 ...