我們知道用「&」號比用「+」號快。因為「+」要對字元竄變數做型別判斷並轉換。
當時也沒想出什麼好辦法。只是將兩次「&」運算拆開,速度提了一倍。還是解決不了問題。
結果就是:fori1to5000,i以字元形式相加。用&運算,要300-500ms
現在試試下面這個。建了個cstrcat的類。
程式**:
classcstrcat'這是類開始。
privatei,sa()
publicpropertygetvalue
redimpreservesa(i)
value=join(sa,"")
endproperty
privatesubclass_initialize()
i=clng(0)
redimsa(500)
endsub
privatesubclass_terminate()
erasesa
endsub
publicfunctionadd(ps)
iflen(ps)=0thenexitfunction
if(i>=ubound(sa))thenupsize
sa(i)=ps
i=i+1
endfunction
privatesubupsize()
dimu
u=ubound(sa)
redimpreservesa(clng(u+u*0.1))
endsub
endclass
你可以用這個**測試一下效能分別:
程式**:
<%
pageexetime1=timer*1000'計時開始
setsc=newcstrcat
fori=0to5000
sc.addi&"aaaaaa"
next
response.writesc.value
'計時結束
response.write",processedtime:"&fix(abs(cdbl(timer)*1000-pageexetime1))&"ms"
pageexetime2=timer*1000
fori=0to5000
sc2=sc2&i&"aaaaaa"
next
response.writesc2
'計時結束
response.write",processedtime:"&fix(abs(cdbl(timer)*1000-pageexetime2))&"ms
"%>
Scala關於運算子問題
如果想在變數名 類名等定義中使用語法關鍵字 保留字 可以配合反引號 val val 42這種形式叫中置操作符,a 操作符 b 等同於 a.操作符 b 後置操作符,a 操作符等同於 a.操作符,如果操作符定義的時候不帶 則呼叫時不能加括號 無參函式不省略小括號,呼叫函式加不加小括號都行 無參函式省略小...
關於python的運算子
運算子的概念 運算子用於執行 運算,會針對乙個以上的運算元專案來進行運算。例如,2 3,其運算元是2和3,二運算子則是 運算子的分類 算數運算子 算術運算 arithmetic operators 符號,就是用來處理四則運算的符號,這是最簡單,也最常用的符號,尤其是數字的處理,幾乎都會使用到算術運算...
關於過載流插入運算子和流提取運算子的問題
在c 編譯系統中,其類庫中提供輸入流類istream和輸出流類ostream,cin和cout分別是兩個類的物件。過載兩運算子格式如下 istream operator istream 自定義類 ostream operator ostream 自定義類 並且只能將其過載為友元函式,而不能作為自定義...