本文主要對qt容器的讀寫進行測試,qt 容器相容 stl ,因此可以類推 stl的訪問速度。
1 qvector/ vector
本次測試,寫vector 為追加,讀也是順序讀取,消耗時間如下:
追加所需時間 時間
/毫秒資料量級 1
萬 2十萬 14
百萬172 千萬
1602 億
時間/毫秒
資料量級
167 千萬
1614 億
從中可以看出,vector追加和順序讀取時間基本一致, 待測試隨機插入, qt**如下:
qvectorvec1,vec2,vec3,vec4,vec5;
qtime t,t2;
t = qtime::currenttime();
for(int i = 0; i < 10000; i++)
t2 = qtime::currenttime();
qdebug() << t.msecsto(t2) << t2.second() - t.second() << vec1[1000];
t = qtime::currenttime();
for(int i = 0; i < 100000; i++)
t2 = qtime::currenttime();
qdebug() << t.msecsto(t2) << t2.second() - t.second() << vec2[10000];
t = qtime::currenttime();
for(int i = 0; i < 1000000; i++)
t2 = qtime::currenttime();
qdebug() << t.msecsto(t2) << t2.second() - t.second()<< vec3[100000];
t = qtime::currenttime();
for(int i = 0; i < 10000000; i++)
t2 = qtime::currenttime();
qdebug() << t.msecsto(t2) << t2.second() - t.second()<< vec4[1000000];
t = qtime::currenttime();
for(int i = 0; i < 100000000; i++)
t2 = qtime::currenttime();
qdebug() << t.msecsto(t2) << t2.second() - t.second()<< vec5[10000000];
qdebug() << "get";
t = qtime::currenttime();
float* p = new float[vec4.count()];
for(int i = 0; i < 10000000; i++)
t2 = qtime::currenttime();
qdebug() << t.msecsto(t2) << t2.second() - t.second()<< vec4[1000000] << p[1000000];
未完待續
C 輸入 輸出 讀寫 容器
int num cin num 輸入 cout 讀fstream 寫 ofstream 1.一次讀乙個單詞 string s,word fstream in 1.txt in s 每讀一次讀乙個單詞 while in word cout word endl 2.一次讀一行 string line f...
C 對 ini檔案的讀寫操作
1.using system 2.using system.collections.generic 3.using system.runtime.interopservices 4.using system.text 5.6.namespace ini 7.27.28.方法 向ini檔案寫入資料 2...
C 對記事本的讀寫
using system using system.collections.generic using system.text using system.io namespace anshield autofutures.baseclase public static string fileread...