delphi和c++資料型別對照表
delphi 字長/值域 c++
shortint 8位有符號整型 signed char
smallint 16位有符號整型 short
longint 32位有符號整型 int
byte 8位無符號整型 unsigned char
word 16位無符號整型 unsigned short
integer 32位有符號整型 int
cardinal 32位無符號整型 unsigned int
boolean 真/假 bool
bytebool 真/假 或 8位無符號整型 unsigned char
wordbool 真/假 或 16位無符號整型 unsigned short
longbool 真/假 或 32位無符號整型 bool (winapi)
ansichar 8位無符號字元 char
widechar 寬字編碼字元 wchar_t
char 8位無符號字元 char
ansistring delphi的字串類 ansistring 類
string[n] 老式的delphi字串, n = 1..255位元組 smallstring模板類
shortstring 老式的delphi字串, 255位元組 smallstring<255>
string delphi的ansistring類 ansistring
single 32位浮點數 float
double 64位浮點數 double
extended 80位浮點數 long double
real 32位浮點數 double
pointer 32無型別指標 void *
pchar 32位字元型指標 unsigned char *
pansichar 32位ansi型字元指標 unsigned char *
comp 64位浮點數 comp 類
olevariant ole可變型別值 olevariant 類
對使用delphi製作dll復用檔案的建議
在公司裡有一些需要製作dll的場合,因為熟悉、方便和簡易,大多數使用delphi來製作。現在就這個主題提出一些個人建議。
盡量使用標準dll介面。指的是傳遞的引數型別及函式返回型別不能是delphi特有的,比如string(ansistring),以及動態陣列和含有這些型別成員的復合型別(如記錄),也不能是包含有這些型別成員資料成員的物件型別,以避免可能的錯誤。如果使用了string型別或動態陣列型別,且呼叫方不是delphi程式,則基本上會報錯。如果呼叫方是delphi但呼叫方或被呼叫方沒有在工程檔案的第一包含單元不是sharemem,也可能會出錯。
如果呼叫方是delphi應用程式,則可能可以使用不包含禁止型別(string, 動態陣列)資料成員的物件作為引數或返回值,但也應盡量避免。
如果呼叫方與被呼叫方都是delphi程式,而且要使用string或動態陣列作引數,則雙方工程檔案的第一包含單元必須是sharemem。(c++builder程式的情況可能與此相同,不過沒有測試過。)
如果呼叫方不是delphi程式,則string、動態陣列、包含string或動態陣列的復合資料型別及類例項,都不能作為引數及返回值。
因此,為了提高dll的復用範圍,避免可能存在的錯誤,應當使用標準win32 api標準引數型別,以前使用string的變數,可以使用pchar(s)轉換。動態陣列則轉換為指標型別(@array[0]),並加上陣列的長度。
如果因為呼叫方與被呼叫方都是delphi程式,為了編寫方便,不想進行上述轉換,則推薦使用執行時包的形式。執行時包可以保證動態分配資料的正確釋放。這樣因為其副檔名(.bpl),顯出該檔案僅限於delphi/c++builder使用(不象dll)。
其次,盡量避免使用overload的函式/過程作輸出,如果同一操作有多個方式,則可以讓函式/過程名有少許差別,類似於delphi中的format***x、create***x等函式及方法,如createbydefaultfile, createdefault。
最後,作為dll的提供者,應當提供直接程式設計的介面檔案,如delphi中的.pas或.dcu(最好是.pas,因為可以有注釋)、c及c++中的.h和.lib。而不是讓使用者們自己建立。如果非要有overload的函式/過程,這一點顯得特別重要。另外,作為delphi應用,提供的.pas檔案可以是提前連線的(使用external指定dll中的輸出函式),也可以是後期連線的(使用loadlibrary、getprocaddress),dll提供者提供程式設計介面檔案,既顯得正式(或hiqos),又有保障。
寫求職信應該注意的問題
由於求職信 即個人簡歷說明信或附函 一般都放在個人簡歷的前面,因而用人單位對你的第一印象總是從你的求職信中而獲得的,所以,每個求職者都必須認真寫好求職信。寫求職信時不可輕視一些細緻入微的小節,因為在雇主的眼裡,注重小節的人在工作崗位上也會謹慎行事。乙個人為人做事是否謹慎可以從一封求職信中看出端倪來。...
寫指令碼的時候應該注意的幾個問題
1.任務出現問題時需要 返回失敗碼。例如,需要匯入的資料檔案不存在,即上游資料出了問題,這個時候需要返回錯誤碼,方便處理,通知到相關開發人員等 2.批量匯入任務時,需要考慮到某些任務可能失敗的風險,如果這些可以失敗的任務是允許的,那麼,需要做處理,以免失敗中斷程式,影響其他任務 3.指令碼應該是可以...
寫頁面注意的問題
1.先觀察 那些結構是一樣的,一樣的統一用class細節 決定一切 千萬注意 id用法,寧願多建立類,css,不要看2個塊內容外表差不多就複製 貼上完事,要考慮內部內容是否一樣js控制的時候 會出現什麼情況 等等 2.見表單就label 繫結 3.標籤語義化 很重要 4.整個頁面在寫之前首先應該先把...