VC中监测函数运行时间(一)—分钟,秒,毫秒
//myTimer.h // [10/16/2013 Duan Yihao] #pragma once #include "StdAfx.h" //////////////////////////////////////////////////////////////////////////
class myTimer
{ public:
myTimer(void);
~myTimer(void); public:
void start(void);
void end(void); void getRunTime(float &minute,float &second,float &millSecond); private: SYSTEMTIME stStar;
SYSTEMTIME stEnd; //
float m_minute;
float m_second;
float m_millSecond; }; //////////////////////////////////////////////////////////////////////////
//myTimer.cpp myTimer::myTimer(void)
{ m_minute=0.0;
m_second=0.0;
m_millSecond=0.0;
} myTimer::~myTimer(void)
{
} void myTimer::start(void)
{ GetLocalTime(&stStar);//获取算法处理前,系统时间 } void myTimer::end(void)
{ //
SYSTEMTIME st2;
GetLocalTime(&stEnd);//获取算法结束时系统时间
float tm1,tm2;
float ts1,ts2;
float tms1,tms2; tm1=stStar.wMinute;
tm2=stEnd.wMinute;//分 ts1=stStar.wSecond;
ts2=stEnd.wSecond;//秒 tms1=stStar.wMilliseconds;
tms2=stEnd.wMilliseconds;//毫秒 if (tms2<tms1)
{
tms2+=;
ts2-=;
}
if (ts2<ts1)
{
ts2+=;
tm2-=;
}
if (tm2<tm1)
{
tm2+=;
} m_minute=tm2-tm1;
m_second=ts2-ts1;
m_millSecond=tms2-tms1; //CString time;
//time.Format(_T("run time consume:%f min,%f s,%f ms"),tm2-tm1,ts2-ts1,tms2-tms1);
//AfxMessageBox(time); } void myTimer::getRunTime(float &minute,float &second,float &millSecond)
{
minute=m_minute;
second=m_second;
millSecond=m_millSecond;
} /*
//////////////////////////////////////////////////////////////////////////
//mfc下测试举例: void CtestMFCView::OnTest()
{ // TODO: 在此添加命令处理程序代码
//测试例子 //计时开始
myTimer t;
t.start(); //------------------------------------------------------------------------------
//>>>
for(int i = 0; i < 10; i++)
{
int n = i;
for(int i = 0; i < 100000; i++)
{
int n = i;
}
}
//<<<
//------------------------------------------------------------------------------ //计时结束
t.end(); //耗时显示
float m,s,ms;
t.getRunTime(m,s,ms); CString time;
time.Format(_T("run time consume:%f min, %f s, %f ms"),m,s,ms);
AfxMessageBox(time); } */
VC中监测函数运行时间(一)—分钟,秒,毫秒的更多相关文章
- VC中监测函数运行时间
VC++编程时,经常会监控某个算法的计算时间,以确定算法的效率.编码举例如下, //========start: algorithm time============= // SYSTEMTIME s ...
- VC中监测程序运行时间(二)-毫秒级
/* * 微秒级计时器,用来统计程序运行时间 * http://blog.csdn.net/hoya5121/article/details/3778487#comments * //整理 [10/1 ...
- 转:VC中UpdateData()函数的使用
VC中UpdateData()函数的使用 UpdateData(FALSE)与UpdateData(TRUE)是相反的过程 UpdateData(FALSE)是把程序中改变的值更新到控件中去 ...
- 转;VC++中Format函数详解
Format是一个很常用,却又似乎很烦的方法,以下是它的完整概貌,以供大家查询之用: 一.字符串 首先看它的声明: function Format(const Format: string; cons ...
- VC中function函数解析
C++标准库是日常应用中非常重要的库,我们会用到C++标准库的很多组件,C++标准库的作用,不单单是一种可以很方便使用的组件,也是我们学习很多实现技巧的重要宝库.我一直对C++很多组件的实现拥有比较强 ...
- 关于VC中LineDDA函数的调用
在项目里碰到这个函数,不知道怎么使用,记录在这里. 该函数的原型如下: BOOL LineDDA(int nXStart, int nYStart, int nXEnd, int nYEnd, LIN ...
- VC 中 UpdateData() 函数的使用
UpdateData(FALSE)与UpdateData(TRUE)是相反的过程 UpdateData(FALSE)是把程序中改变的值更新到控件中去 UpdateData(TRUE)是把在控件中输入的 ...
- java实现获取当前年月日 小时 分钟 秒 毫秒
java代码实现如下 view source print? /** * 英文简写(默认)如:2010-12-01 */ public static String F ...
- VC++中的延时函数
原文链接:http://www.educity.cn/develop/478947.html VC中提供了很多关于时间操作的函数,编写程序时我们可以跟据定时的不同精度要求选择不同的时间函数来完成定时和 ...
随机推荐
- <pages validateRequest="false"/>在.net4.0中无效的问题
再web.config中设置<pages validateRequest="false"/>在.net4.0中无效的问题 解决方案: <system.web> ...
- Test语言编译器V0.8
感觉这个挺好耍的,书上的代码有错误,而且功能有限. 一.词法分析 特点: (1)可对中文进行识别:(2)暂不支持负数,可以在读入‘-'时进行简单标记后就能对简单负数进行识别了. #include &l ...
- main cannot be resolved or is not a field
今天在做XML解析的时候,总是给我报 XML Parsing Error: XML or text declaration not at start of entity 的错误,后来查了下讲大概意思是 ...
- Dialog第三方登录等待
1. styles.xml 中加入 <style name="loadingDialogStyle" parent="android:Theme.Dialog&qu ...
- ti processor sdk linux am335x evm /bin/setup-targetfs-nfs.sh hacking
#!/bin/sh # # ti processor sdk linux am335x evm /bin/setup-targetfs-nfs.sh hacking # 说明: # 本文主要对TI的s ...
- Java [Leetcode 119]Pascal's Triangle II
题目描述: Given an index k, return the kth row of the Pascal's triangle. For example, given k = 3,Return ...
- Mac终端编译运行C++
1.在编辑器中写好C++代码 2.打开终端打开文件对应的地址 3.用g++命令来编译.cpp文件 4.用./文件名来运行 观察文件的目录可发现 g++ 源文件名 编译源文件,产生a.out ./文件名 ...
- HTTP请求中浏览器缓存
本文导读:浏览器缓存机制,其实主要就是HTTP协议定义的缓存机制.客户端缓存是否需要是可以在服务端代码上控制的.那就是响应头.响应头告诉缓存器不要保留缓存,缓存器就不会缓存相应内容:如果请求信息是需要 ...
- Delphi RichEdit操作
1.选择设置对齐 RichEdit1.SelectAll;RichEdit1.Paragraph.Alignment:=taLeftJustify; // switch for other align ...
- DbContext运行时动态附加上一个dbset
参考 Creating DbSet Properties Dynamically C# code? 1 DbSet<MyEntity> set = context.Set<MyEnt ...