结构体类型的静态成员-C++程序设计(谭浩强完整版)
结构体里的静态成员用起来还挺巧妙的,尤其是你在写多个实例的时候,一个公共的变量就能搞定不少事。谭浩强的这个也比较通俗,不是那种晦涩难懂的风格。static
的用法说得清楚,配上代码例子,思路挺清晰的,拿来就能用。
结构体的静态成员用法其实就是让所有对象共用一个变量,不用每个实例都单开一份。比如你想统计创建了几个对象,就可以直接在结构体里加个static int count
,用起来方便省事。
文章里有个挺典型的例子:
struct s {
static int id;
int eng;
};
int s::id = 50;
即使你还没定义s
的对象,id
的空间就已经安排好了。你再建s s1, s2
,这俩对象用的还是同一个id
,适合拿来做一些全局共享的状态,比如记录登录次数、编号累加这种。
你要是想深入了解的话,后面这几个链接可以一起看看:
- 结构体静态成员(讲得也挺细)
- 静态成员的存储(理解内存分配的话可以看下)
- C++ 中的静态数据成员(有点拓展内容)
如果你在做结构体封装或者想优化内存用法,静态成员真的是个不错的工具,记得初始化要写在类外,不然会报错哦~
8.66MB
文件大小:
评论区