以文本方式输出函数执行时间相关信息
2013-01-10 16:27
295 查看
相应的封装类代码:
.h文件
.cpp文件
main函数的调用:
用法说明:
在需要的多次测试时间的函数执行文件中,包含该.h文件,并创建一个全局的实例。在测试函数的前面调用openClocker(),在函数的后面调用closeClocker()和writeToTxt()函数。
.h文件
#pragma once #include<iostream> #include <time.h> #include<fstream> using namespace std; class testTxtOutput { private: //开始计时 clock_t timeStart; //结束计时 clock_t timeEnd; //该段程序这一次执行时间 clock_t runTime; //该段程序这一次执行的总时间 clock_t sumTime; //平均执行时间 clock_t avgTime; //最大执行时间 clock_t maxTime; //统计执行帧的帧数 long countFrame; public: //开始计时 void openClocker(void); //结束计时 void closeClocker(); //作为用户接口完成整个文件的读写 void writeToTxt(string funcName); //计算相应的时间 void calculateTime(); public: testTxtOutput(void); ~testTxtOutput(void); };
.cpp文件
#include "StdAfx.h" #include "testTxtOutput.h" testTxtOutput::testTxtOutput(void): timeStart(0), timeEnd(0), runTime(0), sumTime(0), avgTime(0), maxTime(0), countFrame(0) { } testTxtOutput::~testTxtOutput(void) { } void testTxtOutput::openClocker(void) { timeStart = 0; runTime = 0; timeEnd = 0; timeStart = clock(); } void testTxtOutput::closeClocker(void) { timeEnd = clock(); } void testTxtOutput::writeToTxt(string funcName) { string cloneFunc =funcName; funcName += ".txt"; calculateTime(); ofstream fout; fout.open(funcName,ofstream::out | ofstream::app); fout<<cloneFunc.c_str()<<":第"<<countFrame<<"帧执行" <<" "<<"执行时间(ms):"<<runTime <<" "<<"最大执行时间(ms):"<<maxTime <<" "<<"平均执行时间(ms):"<<avgTime<<endl; } void testTxtOutput::calculateTime() { countFrame++; runTime = timeEnd - timeStart; sumTime += runTime; avgTime = sumTime/countFrame; maxTime = maxTime>runTime ? maxTime : runTime; }
main函数的调用:
// txtoutput.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include"testTxtOutput.h" int _tmain(int argc, _TCHAR* argv[]) { testTxtOutput out; out.writeToTxt("yangjie"); system("pause"); return 0; }
用法说明:
在需要的多次测试时间的函数执行文件中,包含该.h文件,并创建一个全局的实例。在测试函数的前面调用openClocker(),在函数的后面调用closeClocker()和writeToTxt()函数。
相关文章推荐
- C++ 获取当前正在执行的函数的相关信息
- C# 通过委托+异步的方式约束函数的执行超时时间
- linux C 日期时间相关函数(输出中文日期)
- C++ 获取当前正在执行的函数的相关信息
- C++ 获取当前正在执行的函数的相关信息
- C++ 获取当前正在执行的函数的相关信息
- C++ 获取当前正在执行的函数的相关信息
- C++ 获取当前正在执行的函数的相关信息
- 输入m个学生,每个学生有4门课,在主调函数中输入学生的相关信息,编写三个函数: (1)求第一门课的平均分; (2)找出有两门课以上不及格的学生,并输出他们的学号和全部成绩,要求用指针函数实现:fl
- unix 时间的相关函数
- SQL之时区、时间戳相关的函数
- Java输出特定时间段特定格式时间信息
- JDK自带的Logger简单使用--输出信息到文本
- php date 函数输出的时间相差20小时
- 阻止在极短的时间重复执行某个函数
- 获取函数执行时间
- netstat命令---输出网络相关的信息
- oracle中得到一条SQL语句的执行时间的两种方式
- python 限制函数执行时间,自己实现 timeout
- 使用gethostname()函数和gethostbyname()函数获取主机相关信息