cyt
導航
C++博客
首頁
新隨筆
聯系
聚合
管理
<
2008年1月
>
日
一
二
三
四
五
六
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
統計
隨筆 - 36
文章 - 0
評論 - 87
引用 - 0
常用鏈接
我的隨筆
我的評論
我參與的隨筆
留言簿
(12)
給我留言
查看公開留言
查看私人留言
隨筆分類
Work(20)
(rss)
隨筆檔案
2008年1月 (1)
2007年9月 (1)
2007年3月 (3)
2006年11月 (2)
2006年4月 (2)
2006年3月 (2)
2006年1月 (3)
2005年11月 (2)
2005年10月 (20)
文章分類
C/C++
(rss)
Libraries
(rss)
好友Blog
hongrui
Rayman
(rss)
Turing
廢人廢語
(rss)
搜索
最新評論
1.?re: OCI訪問Oracle的一些刁鉆問題[未登錄]
這個有沒有具體的代碼?目前正好遇上這個問題了
--paul
2.?re: 使用std::vector的一個誤區
很同意的你看法
--lancen
3.?re: 新版本的Qu
評論內容較長,點擊標題查看
--home page
4.?re: 新版本的Qu
評論內容較長,點擊標題查看
--Web site
5.?re: 新版本的Qu
評論內容較長,點擊標題查看
--this link
閱讀排行榜
1.?使用std::vector的一個誤區(7957)
2.?epoll的安裝和調試(5853)
3.?我自己的signal / slot實現(5413)
4.?如何在windows service里面控制console程序退出(4605)
5.?OCI訪問Oracle的一些刁鉆問題(4532)
評論排行榜
1.?新版本的Qu(19)
2.?C++博客的精華區分類構想(意見收集)(8)
3.?使用std::vector的一個誤區(8)
4.?drupal安裝心得(7)
5.?補充 BVRDE 使用的一些注意問題(6)
簡單的類型安全format輸出后記
以前曾經寫過一個類型安全的format輸出,(見
http://m.shnenglu.com/cyt/archive/2005/10/08/578.html
)。
今天又在codeporject里面發現有類似的CFormat(
另外一個麻煩的就是輸出16進制數的時候,那個argWithFormat參數也太多了點,有時候想簡單輸出一下都要填半天參數,估計參考CFormat的Hex實現也是一個不錯的選擇。反正只要能支持 << 操作的對象都能用在format_string里面。
format_stream/format_string的確是目前開發中用得最多的類。不過有時候討論起來,為什么非要用format方式,難道就是因為好看的原因?前幾天在看i18n,終于看到一個format_xxxx的優勢:輸出字符串的替換明顯工作量少了很多很多。
在用javascript開發的日子,還是忘不了 format_xxxxx,于是有寫了個javascript的版本:
function
_formatString( strFormat )
{
this
.format( strFormat );
}
;
_formatString.prototype.format
=
function
( strPattern )
{
this
._pattern
=
strPattern;
this
._p
=
0
;
this
._res
=
""
;
}
;
_formatString.prototype._moveToNext
=
function
()
{
for
( ;
this
._p
<
this
._pattern.length;
++
this
._p )
{
var
ch
=
this
._pattern.charAt(
this
._p );
if
( ch
==
"
%
"
)
{
++
this
._p;
if
(
this
._p
<
this
._pattern.length
&&
this
._pattern.charAt(
this
._p )
==
"
%
"
)
{
this
._res
+=
"
%
"
;
}
else
{
break
;
}
}
else
this
._res
+=
ch;
}
return
this
;
}
;
_formatString.prototype.str
=
function
()
{
this
._res
+=
this
._pattern.substr(
this
._p );
return
this
._res;
}
;
function
fmt( strPattern )
{
return
new
_formatString( strPattern );
}
;
_formatString.prototype.a
=
function
()
{
this
._moveToNext();
for
(
var
i
=
0
; i
<
arguments.length; i
++
)
{
this
._res
+=
arguments[i];
}
return
this
;
}
_formatString.prototype.s
=
function
()
{
return
this
.str();
}
用起來大概就是:
var width = 400;
var height = 340;
var left = (screen.availWidth - width) / 2;
var top = (screen.availHeight - height) / 2;
window.open('RYFL_lx.jsp', null, fmt( 'width=%,height=%,left=%,top=%').a(width).a(height).a(left).a(top).s() );
posted on 2006-03-02 16:17
cyt
閱讀(1167)
評論(0)
編輯
收藏
引用
所屬分類:
Work
只有注冊用戶
登錄
后才能發表評論。
【推薦】100%開源!大型工業跨平臺軟件C++源碼提供,建模,組態!
相關文章:
如何在windows service里面控制console程序退出
補充一個OCI的問題
OpenDBX 一個訪問多數據庫的C類庫
移植代碼到64bits碰上的問題
db4o and GigaBase
實在慚愧
新版本的Qu
OCI訪問Oracle的一些刁鉆問題
Linux的系統性能監測參數獲取
簡單的類型安全format輸出后記
網站導航:
博客園
IT新聞
BlogJava
博問
Chat2DB
管理
Powered by:
C++博客
Copyright © cyt
久久久久成人精品无码中文字幕
|
麻豆国内精品久久久久久
|
久久99国产精一区二区三区
|
久久久精品一区二区三区
|
国产精品xxxx国产喷水亚洲国产精品无码久久一区
|
国产毛片欧美毛片久久久
|
亚洲AV日韩AV永久无码久久
|
国产午夜精品久久久久免费视
|
国产三级久久久精品麻豆三级
|
久久久久久久波多野结衣高潮
|
久久国产一区二区
|
久久精品一区二区影院
|
欧美熟妇另类久久久久久不卡
|
久久精品国产99国产精品澳门
|
久久香蕉国产线看观看99
|
久久亚洲日韩看片无码
|
人人狠狠综合久久亚洲88
|
东方aⅴ免费观看久久av
|
国产精品免费久久久久电影网
|
伊人久久大香线蕉亚洲五月天
|
色欲综合久久躁天天躁蜜桃
|
国产成人香蕉久久久久
|
2022年国产精品久久久久
|
99久久香蕉国产线看观香
|
国产AⅤ精品一区二区三区久久
|
久久亚洲精品成人av无码网站
|
狠狠色丁香婷婷久久综合
|
激情综合色综合久久综合
|
久久综合中文字幕
|
国产美女久久精品香蕉69
|
国产aⅴ激情无码久久
|
色婷婷噜噜久久国产精品12p
|
国产精品美女久久久久AV福利
|
狠狠色婷婷综合天天久久丁香
|
久久夜色精品国产噜噜噜亚洲AV
|
欧美伊人久久大香线蕉综合
|
久久成人国产精品一区二区
|
热99RE久久精品这里都是精品免费
|
伊人久久亚洲综合影院
|
亚洲国产婷婷香蕉久久久久久
|
久久精品一区二区
|