静态成员: 静态成员就是在成员变量和成员函数前加上关键字static,称为静态成员 静态成员分为: 静态成员变量和静态成员函数,其中这两个特点如下 静态成员变量: 特点1、所有对象共享同一份数据 特点2、在编译阶段分配内存 特点3、类内声明,类外初始化 静态成员函数: 特点1、所有对象共享同一个函数 ...
分类:
其他好文 时间:
2019-11-15 00:16:11
阅读次数:
74
设计一个类,该类只能在堆上创建对象 将类的构造函数私有,拷贝构造声明成私有。防止别人调用拷贝在栈上生成对象。 提供一个静态的成员函数,在该静态成员函数中完成堆对象的创建 注意 在堆和栈上创建对象都会调用构造函数,为了防止在栈上创建对象我们将构造函数私有化。 拷贝构造函数是在栈上创建对象。 1 cla ...
分类:
编程语言 时间:
2019-11-13 01:06:10
阅读次数:
141
static:静态!!在C/C++中共有的特点是1.static修饰全局变量:表明这个全局变量只在同一文件中函数可见。2.static修饰局部变量:表明这个局部变量的值不会因为函数的结束而丢失。3.static修饰函数:表明该函数只能在同一文件中调用,那么在其他文件中不可以调用静态成员函数故当函数名相同时也就不会发生冲突。C++中特有特性:1.修饰类的成员变量:说明这个成员变量归所有由这个类创建的
分类:
编程语言 时间:
2019-10-16 23:39:49
阅读次数:
174
静态成员是可以独立访问的,也就是说,无须创建任何对象实例就可以访问,而静态成员函数可不建立对象就可以被使用。或者说静态函数与一般函数没有太大的区别,只是访问有限制,静态变量跟一般的全局变量的区别就是访问有限制。 static变量 static变量不像普通的变量,static变量独立于一切类对象处在。 ...
分类:
编程语言 时间:
2019-09-23 10:09:44
阅读次数:
83
static自我理解 static使得数据成员或者函数生命周期为整个文件所在程序的生命周期, 在C中还可以用它避免被其它文件使用为外部成员 static类 明确:类的静态数据成员它被所有类对象共享,但它是属于类的,而不是类的对象的 定义静态成员: static只出现在类内部的声明语句中 静态成员函数 ...
分类:
编程语言 时间:
2019-09-22 19:38:34
阅读次数:
70
[TOC] 1. 函数重载回顾 函数重载的本质为相互独立的不同函数 C++通过函数名和函数参数确定函数调用 无法直接通过函数名得到重载函数的入口地址 函数重载必然发生在同一个作用域中 2. 类中的函数重载 类的成员函数可以进行重载,包括 构造函数的重载 普通成员函数的重载 静态成员函数的重载 注意: ...
分类:
其他好文 时间:
2019-09-18 23:25:59
阅读次数:
202
1. this指针的用处: 一个对象的this指针并不是对象本身的一部分,不会影响sizeof(对象)的结果。this作用域是在类内部,当在类的非静态成员函数中访问类的非静态成员的时候,编译器会自动将对象本身的地址作为一个隐含参数传递给函数。也就是说,即使你没有写上this指针,编译器在编译的时候也 ...
分类:
编程语言 时间:
2019-08-23 13:18:19
阅读次数:
59
C++标准库(八)之图解bind函数对象 bind与普通函数的绑定 1. bind可以将用户提供的需要一个参数的函数转换为一个不需要参数的函数对象: 2.使用非成员函数,在使用前和使用时提供参数: bind与类的非静态成员函数的绑定 1.非静态函数成员的使用需要一个隐式的this参数 2.也可以将一 ...
分类:
其他好文 时间:
2019-08-10 19:13:57
阅读次数:
107
c语言中static的语义 1.static变量: 1).静态局部变量 a.静态局部变量在函数内定义,生存期为整个源程序,但作用域与局部变量相同,只能在定义该变量的函数内使用。退出该函数后, 尽管该变量还继续存在,但不能使用它。 b.对基本类型的静态局部变量若在说明时未赋以初值,则系统自动赋予0值。 ...
分类:
编程语言 时间:
2019-08-09 15:58:47
阅读次数:
99
从this指针谈静态成员函数: 1、调用静态成员函数和静态数据成员时,并不与对象相关,只是与类相关 2、使用静态成员函数,并不会传入一个隐形的this指针,并不知道调用的数据成员是哪个对象的数据成员。所以在静态的成员函数中无法调用非静态的数据成员 3、可以在静态的成员函数中调用静态的数据成员 ...
分类:
编程语言 时间:
2019-07-24 20:48:45
阅读次数:
92