剛買到《c++ primer》第五版中文版,看了幾章內容,深感c++11之完善。因學習過程中經常要寫點片段**,故寫了個耗時測試函式模板,以測試**效能。此測試函式使用了c++11的可變引數模板和右值引用語法,在tdm-gcc 5.1.0新增「-std=c++11」選項編譯通過。本人還未完全了解c++11,有不完善之處,敬請賜教。
#ifndef perftest_h
#define perftest_h
#include
#include
//呼叫n趟函式並計時
//n :呼叫次數
//func:被調函式
//args:被調引數
//返回:耗時,單位秒,精度毫秒
template
double timing_n(const size_t n, functype func, argtypes&&... args)
#endif
被調函式引數args以右值引用方式傳入,以滿足字面量引數和引用引數雙重需求,再用forward函式模板**。
用法示例:
#include #include "perftest.h"
//被測試函式
//臨時變數交換法
void swapbytmp(int& a, int& b)
//異或運算交換法
void swapbyxor(int& a, int& b)
int main(int argc, char *argv)
{ using namespace std;
const size_t pass = 1000000000; //測試迴圈次數 1,000,000,000 即 10^9
cout<<"swap two var "《在i7-3770 windows7電腦上,以「-o2」優化,輸出結果:
swap two var 1000000000 times
function temp var swap time = 0.359
function xor calc swap time = 4.135
lambda temp var swap time = 0.343
lambda xor calc swap time = 0.546
Python效能測試函式
python 社群有句俗語 python 自己帶著電池。別自己寫計時框架。python 2.3以後 具備乙個叫做 timeit 的完美計時工具。diveinto中的例子 import timeit t timeit.timer soundex.soundex pilgrim import sound...
jemter簡單效能測試詳解
1.首先我的英文不是很好,我需要將英文改成中文,方法非常簡單,選擇options choose language chinese即可.兩個chinese乙個是簡體中文,乙個是正體中文 2.選擇檔案 新建測試計畫 3.左鍵點選測試計畫,右鍵點選新增執行緒 使用者 執行緒組 4.執行緒數 執行緒數也就是...
sanic和tornado的簡單效能測試
作業系統 centos7.3.1611 x64 python 版本 3.6.8 tornado版本 6.0.2 sanic版本 19.9.0 cpu intel r core tm i5 2320 cpu 3.00ghz 4核 之前一直使用tornado作為http相關python程式的框架,最近查...