C++ 静态对象
来源:互联网 发布:windows vista和win7 编辑:程序博客网 时间:2024/06/05 16:11
Static in C++
Two basic meanings
Static Storage
--allocated once at a fixed address
Visibility of a name
--internal linkage
Don’t use static except inside functions and classes.
Uses of “static” in C++
Static free functions—-deprecated弃用
Static globle variables—-deprecated弃用
Static local variables—-Persistent storage持久存储
Static member variables—-Shared by all instances所有对象共享
Static member functions—-Shared by all instances, can only access static member variables所有对象共享,只能访问静态变量或静态函数
Static inside functions
Value is remembered for entire program
Initialization occurs only once
Static applied to objects…
Constructors are called before main() is entered
--Constructor called at-most once--main() is no longer the first function called--The constructor arguments must be satisfied
Destructors called when
--main() exited--exited is called
–Compiler assures LIFO order of destructors
Can we apply static to members?
Static means
--Hidden(now usually use public,protected,private)--Persistant
Hidden: A static member is a member
--Obeys usual access rules
Persistant: Independent of instances
假设有一个类:
class A{ A(int,int); ~A(); ...}void f(){ static A a(6,6); ...}
对象 a 的初始化发生在第一次进f()
函数的时候,空间在全局变量区,在编译(链接)的时候分配空间。
(而全局变量的构造发生在程序运行的时候,在main()之前)
- [c++]非局部静态对象初始化顺序
- C++----局部静态对象和函数
- C#——面向对象——静态成员和静态类——静态成员
- C#——面向对象——静态成员和静态类——静态类
- Objective-C 类,实例成员,静态变量,对象方法,类方法(静态方法),对象,
- 静态对象
- 静态对象
- 静态对象
- Objective-C使用静态方法创建字符串对象
- C++:类与对象6(静态成员:平均分)
- c/c++整理--静态成员和临时对象
- Imperfect C++:Chapter11 静态对象:静态成员和终结部(初稿)
- 【c#】面向对象简介(构造、析构函数,静态构造函数、静态类)
- 静态(C#)
- [objective-c]教程二-----objective-c 域,空对象和静态变量
- 静态变量 静态对象 静态函数
- objective-c 类和对象中静态数据成员和静态成员函数(类方法)详解
- C#:静态与非静态
- Linux中zip压缩和unzip解压缩命令详解
- 八数码
- Unity地形(二)之导出为.obj模型
- BookMark
- IDEA中Maven管理下添加mysql依赖
- C++ 静态对象
- IP和子网掩码
- 上下限-板块浮动 插件
- FormData 对象的使用
- U3D地形(三)之Maya打开.obj模型并为其贴图
- 封装jsonp跨域请求
- Josephus Problem 约瑟夫环问题的讨论
- 2017杭电多校第一场01
- 自己实现一个简单的RPC框架