C++ invoke other class function
2021/12/28 12:07:13
本文主要是介绍C++ invoke other class function,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
//This is UtilityHelper.h #include <iostream> #include <uuid/uuid.h> #include <ctime> using namespace std; class UtilityHelper { public: static char *uuidValue; static char *dtValue; UtilityHelper(); ~UtilityHelper(); char *getUuid(); char *getTimeNow(); };
The UtilityHelper.cpp which implementation parts of declaration in UtilityHelper.h
#include <UtilityHelper.h> char * UtilityHelper::uuidValue=(char*)malloc(40); char * UtilityHelper::dtValue=(char*)malloc(20); char * UtilityHelper::getTimeNow() { time_t rawTime=time(NULL); struct tm tmInfo=*localtime(&rawTime); strftime(dtValue,20,"%Y%m%d%H%M%S",&tmInfo); return dtValue; } char* UtilityHelper::getUuid() { uuid_t newUUID; uuid_generate(newUUID); uuid_unparse(newUUID,uuidValue); return uuidValue; } UtilityHelper::UtilityHelper() { cout<<"This is UtilityHelper constructor and now is "<<getTimeNow()<<endl; } UtilityHelper::~UtilityHelper() { cout<<"This is UtilityHelper deconstructor and now is "<<getTimeNow()<<endl; }
Invoke in main.cpp
#include <iostream> #include <uuid/uuid.h> #include <sstream> #include <ctime> #include <unistd.h> #include <ostream> #include <fstream> #include <istream> #include <random> #include <vector> #include "UtilityHelper.h" void class9(); int main() { class9(); return 0; } void class9() { UtilityHelper uh; for(int i=0;i<100;i++) { cout<<"Index="<<i<<",uuidvalue="<<uh.getUuid()<<",now is "<<uh.getTimeNow()<<endl; usleep(100000); } cout<<"Finished in class9() and now is "<<getTimeNow()<<endl; free(UtilityHelper::dtValue); free(UtilityHelper::uuidValue); }
Compile via below command,please pay attention to the below command which adds the additional cpp file UtilityHelper.cpp
g++ -g -std=c++2a -I. h1.cpp UtilityHelper.cpp -o h1 -luuid
Run ./h1
这篇关于C++ invoke other class function的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23增量更新怎么做?-icode9专业技术文章分享
- 2024-11-23压缩包加密方案有哪些?-icode9专业技术文章分享
- 2024-11-23用shell怎么写一个开机时自动同步远程仓库的代码?-icode9专业技术文章分享
- 2024-11-23webman可以同步自己的仓库吗?-icode9专业技术文章分享
- 2024-11-23在 Webman 中怎么判断是否有某命令进程正在运行?-icode9专业技术文章分享
- 2024-11-23如何重置new Swiper?-icode9专业技术文章分享
- 2024-11-23oss直传有什么好处?-icode9专业技术文章分享
- 2024-11-23如何将oss直传封装成一个组件在其他页面调用时都可以使用?-icode9专业技术文章分享
- 2024-11-23怎么使用laravel 11在代码里获取路由列表?-icode9专业技术文章分享
- 2024-11-22怎么实现ansible playbook 备份代码中命名包含时间戳功能?-icode9专业技术文章分享