cyt
導航
C++博客
首頁
新隨筆
聯系
聚合
管理
<
2005年10月
>
日
一
二
三
四
五
六
25
26
27
28
29
30
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
統計
隨筆 - 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://www.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热成人精品热久久669
|
国内精品久久久久国产盗摄
|
99久久综合国产精品免费
|
久久毛片一区二区
|
精品熟女少妇a∨免费久久
|
高清免费久久午夜精品
|
久久人人超碰精品CAOPOREN
|
日本五月天婷久久网站
|
久久免费精品视频
|
国产99久久久国产精品小说
|
久久精品国产99国产精品澳门
|
亚洲欧洲中文日韩久久AV乱码
|
色欲久久久天天天综合网精品
|
99久久人妻无码精品系列
|
少妇被又大又粗又爽毛片久久黑人
|
人妻无码αv中文字幕久久琪琪布 人妻无码精品久久亚瑟影视
|
久久久精品一区二区三区
|
无码人妻少妇久久中文字幕
|
久久er热视频在这里精品
|
久久久久亚洲av成人网人人软件
|
久久精品?ⅴ无码中文字幕
|
久久精品国产亚洲AV无码娇色
|
一级做a爰片久久毛片免费陪
|
国产一级做a爰片久久毛片
|
亚洲精品无码成人片久久
|
久久久中文字幕日本
|
国产精品久久网
|
老色鬼久久亚洲AV综合
|
久久精品国产免费观看三人同眠
|
久久亚洲电影
|
四虎亚洲国产成人久久精品
|
97久久精品人人澡人人爽
|
99麻豆久久久国产精品免费
|
热re99久久6国产精品免费
|
亚洲国产精品无码久久久蜜芽
|
精品综合久久久久久97
|
久久久国产亚洲精品
|
久久天天躁狠狠躁夜夜躁2014
|
久久精品国产清自在天天线
|
久久久精品2019免费观看
|
国产精品久久久香蕉
|