![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c++
文章平均质量分 71
凉白开水的温度
这个作者很懒,什么都没留下…
展开
-
c++面试之static与const的作用
一、static的作用(1)在函数体内,静态变量具有“记忆”功能,一个被声明为静态的变量在这一函数被调用的过程中,其值维持不变;(2)函数体外,模块内,它的作用范围是有限制的:静态变量:该变量可以被模块内所有函数访问,但不能被模块外其他函数访问,是一个本地的全局变量;静态函数:作用域与普通函数不同,它的作用域仅限于本文件中,只能被这一模块的其他函数调用,不能被模块外的其他函数调用。static全局...原创 2018-06-05 17:18:35 · 710 阅读 · 0 评论 -
C++面试之交换变量值
不使用第三方变量,交换两个变量的值1、常用的交换变量值的方法是:int temp =a;a = b;b = temp;那么不使用第三方变量来交换两个值,方法如下:(1)算术法:利用普通的+与-运算符实现a = a + b;b = a - b;a = a - b;以 a = 3, b = 5为例,经第一行语句的执行,a = 3 + 5 =8, b 的值为 5;经第二行语句的执行,a 值不变,...原创 2018-06-13 10:23:36 · 200 阅读 · 0 评论 -
CPP之对象模型
一、C++对象模型在c++中,class data members有两种:static、nonstatic;class member function有三种:static 、nonstatic、virtual;例如:下面这个class Pointclass Point{public: Point(float xval); virtual ~Point(); float x() con...原创 2018-06-29 17:17:49 · 442 阅读 · 0 评论 -
默认构造函数(Default Constructor)的构造操作
default constructors 是在需要的时候被编译器产生出来。被合成出来的default constructor只执行编译器所需的行动;C++标准:对于class X,如果没有任何 user defined constructor,那么会有一个default constructor被隐式(implicit)声明出来。一个被隐式声明出来的default constructor将是一个tr...原创 2018-06-11 10:49:03 · 3469 阅读 · 0 评论 -
copy constructor的构造操作
一、调用copy constructor三种情况下,会以一个object的内容作为另一个class object的初值,即调用copy constructor。1、显式定义class X{...};X x;//显式地以一个object的内容作为另一个class object的初值X xx = x;2、当object被当做函数参数时extern void foo(X x);void bar...转载 2018-06-30 14:39:48 · 209 阅读 · 0 评论 -
C++对象模型之Data语意学
对于下列程序,它们的sizeof结果:class x{};class y : public virtual x{};class z : public virtual x{};class a : public y, public z{};在visual studio 2013编译环境下:1、空类的sizeof是1 byte,是被编译器安插进去的一个char,这样使得class的两个object...原创 2018-07-02 09:40:28 · 262 阅读 · 0 评论 -
C++对象模型之function语意学
一、nonstatic member function(非静态成员函数)c++设计准则之一:nonstatic member function至少要和一般的nonmember function有相同的效率;对于如下的两个函数:float magnitude3d(const Point3d *_this) {...}//非成员函数float Point3d::magnitude3d()const ...原创 2018-07-02 15:29:02 · 224 阅读 · 0 评论