赞
踩
本文总结一下C++面试时常遇到的问题。C++面试中,主要涉及的考点有
const 变量 |
const int a; |
不能修改值,必须初始化 |
const 类对象 |
const MyClass a; |
不能修改成员变量的值,不能调用非 const 函数 |
指向 const 变量的指针 |
const int * a; |
指向内容不可变,指向可变 |
const 指针 |
int * const a; |
指向内容可变,指向不可变 |
指向 const 变量的 const 指针 |
const int * const a; |
指向内容不可变,指向也不可变 const 引用 |
const 变量作为函数参数 |
void myfun(const int a); |
函数内部不能改变此参数 指向 const 变量的指针做参数,允许上层用一般指针调用。(反之不可) |
const 返回值 |
const string& myfun(void); |
用于返回const引用 上层不能使用返回的引用来修改对象 |
const 成员变量 |
const int a; static const int a; |
必须在初始化列表初始化,之后不能改变 static const 成员变量需要单独定义和初始化 |
const 成员函数 |
void myfun(void) const; |
this指针为指向const对象的const指针 不能修改 非mutable 的成员变量 |
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。