C++结构体中的静态变量
2024-10-19 18:18:33
分享一个挺有意思的代码:
#include <bits/stdc++.h>
using namespace std; struct Point {
static int cnt;
Point() {
++cnt;
cout << "There is " << cnt << " item(s)." << endl;
}
~Point() {
--cnt;
cout << cnt << " item(s) remains." << endl;
}
} ;
int Point::cnt; int main() {
Point a, b;
delete (new Point());
Point c, d;
return ;
}
java是可以直接在类中初始化的,不过C++的初始化要在结构体外完成,否则会在链接的时候发生找不到对象的错误。
#include <bits/stdc++.h>
using namespace std; class TheOnlyInstance {
public:
static TheOnlyInstance *GetTheOnlyInstance();
static int Parameter;
protected:
TheOnlyInstance() {}
} ; //int TheOnlyInstance::Parameter = 2; TheOnlyInstance *TheOnlyInstance::GetTheOnlyInstance() {
static TheOnlyInstance objTheonlyInstance;
int Parameter = ;
return &objTheonlyInstance;
} int main() {
//cout << TheOnlyInstance::Parameter << endl;
cout << TheOnlyInstance::GetTheOnlyInstance() << endl;
cout << TheOnlyInstance::Parameter << endl;
return ;
}
——Written by Lyon
最新文章
- Angularjs-项目搭建
- Mysql 迁移最完整可用的教程
- C# asp.net 搭建微信公众平台(可实现关注消息与消息自动回复)的代码以及我所遇到的问题
- Coding源码学习第三部分(EaseStartView.m)
- ssh免密码登陆设置
- Android Manifest 权限描述大全
- kernel/panic.c
- Windbg符号与源码 《第二篇》
- WAS维护常用操作
- hdu 4455 Substrings (DP 预处理思路)
- android app调试没问题,但打包签名的apk,运行时出现闪退怎么办?
- 五子棋的斜对角方向上的规则 -- java编程(简单粗暴版)
- PS图层混合算法之一(不透明度,正片叠底,颜色加深,颜色减淡)
- 【NodeJS】基础知识
- Java学习随笔(2)--爬虫--天气预报
- 20.Module 的语法
- postman(五):在不同接口之间传递数据
- 【洛谷P1376】机器工厂
- Java8 利用Lambda处理List集合循环给另外一个List赋值过滤处理
- CUDA C Programming Guide 在线教程学习笔记 Part 13