2008年2月20日 星期三
【軟體名稱】:Your Uninstaller! 2008 PRO v6.1.1236
【軟體語言】:英文+中文化
【檔案格式】:RAR>EXE
【檔案大小】:3.94MB
【軟體介紹】:
利用Your Uninstaller!,你可以輕鬆查看到各種工具軟件的卸載信息,根據卸載信息的提示,可以知道哪些程序可以被徹底地卸載;除了具有卸載功能外,該程序還具有啟動程序管理功能,利用該功能你可以自定義各種需要隨計算機系統一起啟動的應用程序;此外,為方便你使用鼠標右鍵,該工具還新增了IE上下文菜單管理功能,利用這個功能你能提高計算機的操作效率。這是新的2008版本,多國語言含簡繁體。
下載
http://www.badongo.com/file/5628404
這一版中文化得徹底,下面狀態欄無亂碼!值得推薦!
在使用C++编程时,经常要用到不同数据类型之间的类型转换,可能大家对C语言的类型强制转换比较熟悉,就是在表达时前面加一个“(强制转换类型)”。在 C++中仍然可以用C方式的对不同类之间数据类型转换,但是,C++提供了更好的数据类型转换方式,就是利用关键字“dynamic_cast”来完成对 不同类之间数据类型之间的转换。
dynamic_cast的使用格式是:
dynamic_cast <T> (ptr)
其中,T必须是一个类的的指针或引用,也可以是 void *,参数ptr必须是一个能得到一个指针或者引用的表达式。
如果T是 void * ,那么 ptr 必须是一个指针,而不能是一个引用。
如果转换成功,dynamic_cast <T> (ptr) 将把ptr转换成你想要转换的类型,如果不成功,返回0(NULL),如果转换到一个引用类型失败,将会触发一个“Bad_cast exception”异常。
下面的代码是dynamic_cast的实例代码:
// HOW TO MAKE DYNAMIC CASTS
// 这个程序必须用 -RT 选项编译
#include <iostreamstd::>
#include <typeinfo.h>
class Base1
{
virtual void f(void) { }
};
class Base2 { };
class Derived : public Base1, public Base2 { };
int main(void) {
try {
Derived d, *pd;
Base1 *b1 = &d;
if ((pd = dynamic_cast<Derived *>(b1)) != 0) {
std::cout << "The resulting pointer is of type "
<< typeid(pd).name() << std::endl;
}
else throw Bad_cast();
Base2 *b2;
if ((b2 = dynamic_cast<Base2 *>(b1)) != 0) {
cout << "The resulting pointer is of type "
<< typeid(b2).name() << endl;
}
else throw Bad_cast();
}
catch (Bad_cast) {
cout << "dynamic_cast failed" << endl;
return 1;
}
catch (...) {
cout << "Exception handling error." << endl;
return 1;
}
return 0;
}
下面是一个实际应用的例子,在创建数据模块时,打开数据模块上面所有的数据集。其原理是:遍历数据模块的所有VCL控件,如果可以动态转换成数据集类型(TDataSet),则调用TDataSet的Open()方法打开它。
//---------------------------------------------------------------------------
void __fastcall TDM::DataModuleCreate(TObject *Sender)
{
int i;
TDataSet *p;
for(i=0;i<ComponentCount;i++)
if(p=dynamic_cast<TDataSet *>(Components[i]))
p->Open();
}
以前經常使用Maxthon,這個軟件有個網址縮寫的功能比較方便,在地址欄只要輸入一個 m 就進入我的博客:http://blog.pixnet.net/registerboy,輸入 g 就進入谷歌:http://www.google.cn 。換到 Firefox 后,很希望 Firefox 也有這個功能,可是找遍了“選項”也沒有找到網址縮寫這一項,只有想其他的辦法了,突然想到能不能利用 Firefox 強大的書簽功能呢,于是在 Firefox 的書簽中琢磨了一番,最后總算讓 Firefox 能夠實現像 Maxthon 的網址縮寫功能了。步驟如下:
1、進入你想要設置快捷鍵的網站,如 http://blog.pixnet.net/registerboy ;
2、按CTRL+D,將這個網站加入你的書簽中;
3、編輯書簽。(選擇書簽中剛才的網址,點右鍵,屬性);
4、設置”定制關鍵字”為 網址縮寫 m ,點擊”確定”完成設置;
5、地址欄中輸入 m ,直接回車,看看,你到哪里了?
Card dealer 坐莊
Card
Dealer 開花
Marker 豬油糕
Indicator 珠仔盤
Score cards 路紙
Palette; stick 鏟
Shuffle machine 洗牌機
Cut card 白咔
Spacer 透明膠籌
Layout 證面
Chip trap/ float 珠盤
Sunken 下格珠盤
Jar/ tumbler 骰盅
Dealt 派牌
Burn card/ discard 銷牌
Deliver card 送牌
Distributes card 分牌
Misdeal 發錯牌
Exposed card 陽牌
Unexposed card 沒有陽牌
Squeezed card 看牌
Natural 例牌
Pre-shuffled 備用牌
Tableau 牌例
Wager 賭注
Unclaimed chips 遺注
Post betting/ flesh bet 窩注
Dispute 爭注
Phone bet 電話投注
Chips 籌碼
Cash change 現金碼
Colour change 換碼
Spread the chips 曬碼
Non-negotiables 泥碼;特碼
Sizing 度碼
Chipping 執碼
Counting wagers 圍紅
Credit 繳碼
Announcement 報數
Cards cabinet 牌柜
Dolly 塔
Dice 骰仔
Triple 圍骰
Punch 按骰盅
Up graded 升紅
Down graded 降紅
Differential 差額(莊或閒受注碼)
Short payment 短賠
Extra payment/ over payment 多賠
Commission/ tax 抽水份
Table limit 限紅
Collect the winning bet 殺錯注
Squeeze table 甩牌檯
Temporary close/ idle 晒蓆
Average crowd 客情一般
Standing 企位
Hand skill 手門
Chip plaque 大額籌碼
Drop box 銀箱
Start time 開始時間
End time 結束時間
Push hand 和局
Good trend 好路
Long bankers/trend bankers 長莊
Long players/trend players 長閒
Banker stick 逢莊連
Player stick 逢閒連
Banker never sticks 逢莊不連
Player never sticks 逢閒不連
Based on the trend 跟路買
Begin the shoe of card 牌局開始
Middle the shoe of card 牌局中段
End the shoe of card 牌局尾段
Jumping for B/P 單跳
Double bet 孖寶
Void game 取銷牌局
Location 區域
Agent 串謀
Major player photo 大客相片
Major loss report 客人贏錢記錄
Pit operation 運作區
Headcount 人流統計
Power 職權
Operations manager OM 運作經理
Roster 編更
Shift 輪更
Punctual 準時
Grooming 儀容
Card shuffler 洗牌員
Card checker 監洗員
Punter 睹客
Spade 葵扇
Heart 紅心
Club 梅花
Diamond 階磚
Slipped out 滑出
Moocher 搲爛腳
Loan shark 放數佬
A man husting chips 扒仔
Pregnant 大肚婆
Crystal lights 水晶燈
Light bulb 燈泡
UV lights 照銀紙燈
UPS 電腦主機
Main cage/ cage 總賬房/ 賬房
D.I.C.J. 政府稽查
Lateness 遲到
Over slept 睡過時
MT 一日內錯兩次
UW 口頭警告
WW 嚴重警告
EL 急事即告
SE 不適提早走
Collected winning bet
Paid to losing bet
Short payment
Wrong payment
Customers complain
Fall to turn cards
Draw extra card on BJ
Failed to burn cards
Cock dices on SIC BO
Forgot to give cards to the player on CS
千千靜聽5.10版本加入了每周推荐,但不能下載歌曲。
我經過一番嘗試發現有一種方法可以,就是把想要得歌曲點選后進行格式轉換(批量轉 換=批量下載 ^-^)。不過文件名就是你那歌曲的網絡地址罷了(但歌曲內的ID正確,用播放列表的重名命名功能把文件名批量快速改過來就是)。而且最好是轉成MP3格 式,那樣轉化出錯几率較小,出錯的話可能這時段網速慢了點,換個網速快的時段下就可以了。我試驗過90%以上都可以的。
下載http://wwwcnc.ttplayer.com/down.php?t=3
可以下載 Themes Creator 最新3.19 版,用來製作 Sony Ericsson Theme 的官方工具
http://blog.pixnet.net/registerboy/post/13306954
我這裡是 以 w580 做示範
1.打開Themes Creator
留意紅圈的地方,我們先來做一下導航的圖案,背景的 size 是 240 * 320 pixel,光標圖案是 231* 38 ,我們要放進去的圖案最好是一樣的size
2.現在利用 photoshop 來製作符合 size 的圖案,打開你已準備好的圖案,因為背景是竪的,所以我們剪出來的也要是竪的,用紅圈的工具,在圖上拖曳出你想要的部份,因為我們這樣用手隨便拉,size的比例可能不一樣,但沒關係,你只要注要你想要的寛度,還有頂部要從哪裡開始,因為最下面的地方你拉長了也沒關係,載入主題的時候會自動cut下面多了出來的部份,如果不明白自己再試幾次就知道,然後雙撃左鍵
就會變成一張新的圖案是你所拉的,再來就調整我們所需的size
只要輸入第一行的width 寛度就可以了是 240, height 就不用了,按ok,然後再把圖案save 起來 做 jpg或者png 就可以載入 creator 了
接下來就是長方型的光標圖案,而我們要做的是長方型的左邊是透明的,然後最右邊是一個小小的圖案,先用剛才的方法剪下我們想要的圖案,
因為我只想要小雨傘,所以要把其他地方擦掉用以下圓圈的工具,按住三角形就會跳出來給你選
按一下不想要的地方就會去掉,再把size 調整一下,現在和剛才相反只須輸入height : 38
現在再開一個新檔案 size 是231 * 38 也就是光標的大小,記住要把background content 改成透明
然後用紅圈的工具來把小雨傘拉過去新的圖裡,再調整一下位置,另存成 png, 就可以載入creator了
大功告成,theme creator 的其怹東西你也可以用這樣的方法耶..
C++預設函數成員都不是虛擬函數,如果要將某個函數成員宣告為虛擬函數,則要加上"virtual"關鍵 字,然而C++提供一種語法定義「純虛擬函數」(Pure virtual function),指明某個函數只是提供一個介面,要求繼承的子類別必須重新定義該函數,定義純虛擬函數除了使用關鍵字"virtual"之外,要在函 數定義之后緊跟着'='并加上一個0,例如:
class Some {
public:
// 純虛擬函數
virtual void someFunction() = 0;
....
};
一個類別中如果含有虛擬函數,則該類別為一「抽象類別」(Abstract class),該類別只能被繼承,而不能用來直接生成實例,如果試圖使用一個抽象類別來生成實例,則會發生編譯錯誤。
以下舉個實際的例子,先假設您設計了兩個類別:ConcreteCircle與HollowCircle:
class ConcreteCircle {
public:
void radius(double radius) {
_radius = radius;
}
double radius() {
return _radius;
}
void render() {
cout << "畫一個半徑 "
<< _radius
<< " 的實心圓"
<< endl;
}
private:
double _radius;
};
class HollowCircle {
public:
void radius(double radius) {
_radius = radius;
}
double radius() {
return _radius;
}
void render() {
cout << "畫一個半徑 "
<< _radius
<< " 的空心圓"
<< endl;
}
private:
double _radius;
};
顯 然的,這兩個類別除了render()方法的實作內容不同之外,其它的定義是一樣的,而且這兩個類別所定義的顯然都是「圓」的一種類型,您可以定義一個抽 象的AbstractCircle類別,將ConcreteCircle與HollowCircle中相同的行為與定義提取(Pull up)至抽象類別中:
AbstractCircle.h
#ifndef ABSTRACTCIRCLE
#define ABSTRACTCIRCLE
class AbstractCircle {
public:
void radius(double radius) {
_radius = radius;
}
double radius() {
return _radius;
}
// 宣告虛擬函數
virtual void render() = 0;
protected:
double _radius;
};
#endif
注 意到在類別宣告了虛擬函數render(),所以AbstractCircle是個抽象類別,它只能被繼承,繼承了AbstractCircle的類別必 須實作render()函數,接着您可以讓ConcreteCircle與HollowCircle類別繼承AbstractCircle方法并實作 render()函數:
HollowCircle.h
#include <iostream>
#include "AbstractCircle.h"
using namespace std;
class HollowCircle : public AbstractCircle {
public:
void render() {
cout << "畫一個半徑 "
<< _radius
<< " 的空心圓"
<< endl;
}
};
ConcreteCircle.h
#include <iostream>
#include "AbstractCircle.h"
using namespace std;
class ConcreteCircle : public AbstractCircle {
public:
void render() {
cout << "畫一個半徑 "
<< _radius
<< " 的實心圓"
<< endl;
}
};
由 于共同的定義被提取至AbstractCircle類別中,并于衍生類別中繼承了下來,所以在ConcreteCircle與HollowCircle 中無需重復定義,只要定義個別對render()的處理方式就行了,而由于ConcreteCircle與HollowCircle都是 AbstractCircle的子類別,因而可以使用AbstractCircle上所定義的虛擬操作介面,來操作子類別實例上的方法,如下所示:
main.cpp
#include <iostream>
#include "AbstractCircle.h"
#include "ConcreteCircle.h"
#include "HollowCircle.h"
using namespace std;
void render(AbstractCircle &circle) {
circle.render();
}
int main() {
ConcreteCircle concrete;
concrete.radius(10.0);
render(concrete);
HollowCircle hollow;
hollow.radius(20.0);
render(hollow);
return 0;
}
執行結果:
畫一個半徑 10 的實心圓
畫一個半徑 20 的空心圓
//該文章來源于:<a href='http://www.violetblog.cn'>VioletBlog</a>