在工程域中不创建对象,可以直接调用的类如何写

tt2com 2012-10-12 04:24:34
我现在有个class,存放一些产量数据
我希望其他类可以不用创建对象直接调用它

class b
{
public:
b(){
初始化 data
;}
~b(){;}
List<T*>& getData();
private:
List<T*> data;
}


我希望在其他类不需要创建b的对象直接可以获取 data;
该如何修改?
...全文
56 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
zjs100901 2012-10-12
  • 打赏
  • 举报
回复

template< typename T >
class b
{
public:
b(){}
~b(){}
static list<T*>& getData(){ return data; }
private:
static list<T*> data;
};

list< int * > b< int >::data;

int main()
{
int a;
b< int >::getData().push_back( &a );
return 0;
}
  • 打赏
  • 举报
回复
看看单件模式

64,639

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧