delphi編譯器效率高到底是指什麼

2023-01-15 23:00:09 字數 4930 閱讀 7989

1樓:匿名使用者

所謂delphi編譯器效率高,一般指的是以下三方面:

1、編譯連線時間短,這一點是其他任何編譯器都無法相比的(一般來說,vc, vb編譯過程所用的時間是delphi的幾倍),原因很簡單:pascal語法限制嚴格,使用者必須規範地編碼,省去了編譯器的很多麻煩。

2、編譯出的程式執行速度快,產生的**長度短。這一點比vb強,但和vc基本一樣,誰也沒有優勢。不過很多人有誤解,以為delphi類庫龐大複雜,加一個控制元件就要把整個一個原始檔全部加進來,**長度太大,效率太差。

其實真實情況是,擁有眾多vcl控制元件類庫,是delphi的一個獨特之處,vc的mfc庫無法與之相比——mfc有的底層簡單封裝的類,vcl庫都有,但vcl有的上層元件,mfc卻根本沒有。使用vcl上層應用控制元件後,**長度的確比vc大,不過vc卻沒有這方面的選擇,而vc所用的從底層一磚一瓦地編碼的方式,delphi完全支援,而且絕對沒任何劣勢,**長度也不長(vc的語法複雜,按c程式設計師一般習慣做的話,**長的反而會是vc)。產生誤解的原因,是多數delphi程式設計師是應用級的,而vc程式設計師是底層些的,應用程式設計師大多不太懂得底層**的編寫,只會搬控制元件、響應事件,以為底層的東西delphi做不來。

3、對應用級的程式開發週期短——這也就是borland一貫吹捧的「快速開發工具」的含義。正因為vcl的存在(封裝了很多介面元件以及通訊、資料庫、internet應用等很多後臺功能),對高層應用不再需要一磚一瓦地受累,使開發週期縮短了很多倍。

單純從技術角度說,編譯器效率應該指編譯出的**是否短小/執行速度是否快,以及是否能用較少的源**高效地實現複雜功能。前一方面delphi並不比vc差,而比vb強,但並非一騎絕塵;後一方面則的確有一騎絕塵之象。

delphi的致命缺點,其實不是技術——技術它是領先的,毫無疑問,問題是市場策略和公司實力(borland只是家小公司),微軟「攜作業系統以令諸侯」,誤導了眾多軟體開發公司,讓它們以為微軟的才正宗和好用,造成了事實上的vb,vc使用者群遠比borland的龐大,源**數量也一樣是c/c++遠遠佔優,而borland的c++ builder卻開發得太晚難以形成市場優勢。

概括來說,如果你要開發上層應用為主的程式,特別是資料庫方面的程式,那麼delphi能讓你省不少時間;而若開發底層些的軟體,為能有更多相關**可以參考利用,為能容易地招聘到更合適的程式設計師,以及為了**維護方便,都適合用c/c++去做,當然,c++ builder從技術上說是個不錯的選擇,只是使用者群還太小。

2樓:匿名使用者

什麼一騎絕塵,沒有那麼誇張啦,delphi釋出delphi7的時候也沒說效率比同期的vc要高,只說了效率和vc相當,比vb高30%左右而已。現在的delphi更沒有看到這樣的宣傳語了。。。。

編譯器效率一般是指編譯連結後的原生**(也就是機器碼)的執行效率,直觀上就是在同樣的平臺上delphi的專案執行起來要比vb快。

另外一個效率不常講,但是也會被用來衡量編譯器的憂劣,那就是對**的優化是否合理。

編譯器的效率高低是衡量編譯器好壞的重要指標。

從執行期看,效率高的編譯器編譯出來的**量小,執行速度快,

從設計期看,一個好的編譯器可以完全讓你不需要顧忌底層的實現。

但這是不可能的,borland的產品不論是delphi還是bcb都對基本庫中的例程做了內嵌彙編的實現,內嵌彙編意味這什麼——我不信任你編譯器能編譯出比我這段彙編**更優化的原生**。這個比喻有些過分,但是換一個角度可以看出,編譯器的設計目標就是編譯出的**能與彙編的執行速度相比。

另外最近經常以效率標榜的是icc,intel宣稱icc編譯出的**要比其他編譯器的**執行效率高出30%到50%。

再另delphi其實是一個開發系統,他經過精心設計的類庫結構對其應用的速度提升也有幫助。

3樓:己聞楣

如果把編譯器效率理解為生成目標程式耗時短,那麼書上的說法正確,delphi確實比vc快很多倍。

但是,delphi編譯生成的程式執行效率和vc比,還是有差距,它的細節優化點不夠豐富,舉兩個例子吧:

1、一個常量作為被除數的除法,vc會優化為另外一個數兒的乘法,當然前提要保證結果的正確性了,對於乘法指令遠遠高效於除法指令的這個事實,delphi沒有關注和予以實現;

2、迴圈,有些情況下,vc能夠把一個迴圈優化為順序執行的一組指令,迴避跳轉語句,雖然指令多了,但是能夠充分利用cpu的快取記憶體、流水線、指令預取等機制,從而執行效率更好,delphi可就沒這麼高明瞭。

有關執行效率的優化,intel曾經宣稱它是最牛的,應該有其可信度,畢竟intel最懂cpu呀。

假如不是那麼特別在意執行效率,把delphi用作快速構建開發工具,還是不錯的選擇。生成目標程式快,從培養懶人的角度看,有點兒優勢,程式可以「調」和「試」出來,而不用十分精到地「編」出來,不過對於專業程式設計師來說,這個方式應造唾棄,至少是不能濫用而喪失先設計後編碼的習慣。

delphi的編譯速度為什麼那麼快?

4樓:匿名使用者

因為你的工程太小。找個巨大的工程試試

delphi的快也是老黃曆了,說它快可能是指很久以前在其它條件基本相同的情況下,**生成速度相對於其它編譯器快一些。編譯的快慢跟很多因素相關,比如工程的大小,是否採用了預編譯,優化的層次深度,優化選項的選擇等。

5樓:匿名使用者

因為delphi的編譯器比較先進。

delphi編譯器採用的是什麼程式語言?

6樓:匿名使用者

pascal語言 & delphi

優點 (1)pascal語言結構嚴謹,可以很好地培養一個人的程式設計思想。

(2)delphi是一門真正的物件導向的開發工具,並且是完全的視覺化。

(3)delphi使用了真編譯,可以讓你的**編譯成為可執行的檔案,而且編譯速度非常快。

(4)delphi具有強大的資料庫開發能力,可以讓你輕鬆地開發資料庫。

缺點 delphi幾乎可以說是完美的,只是pascal語言的過於嚴謹讓人感覺有點煩。

pascal語言簡介

delphi這個名字源於古希臘的城市名。它集中了第三代語言的優點。以object pascal為基礎,擴充了物件導向的能力,並且完美地結合了視覺化的開發手段。

delphi自2023年3 月一推出就受到了人們的關注,並在當年一舉奪得了多項大獎。

delphi的出現打破了v承視覺化程式設計領域一統天下的局面。並且delphi使用了本地編譯器直接生成技術,使程式的執行效能遠遠高於其它產品生成的程式。它還是真正的物件導向的程式語言。

pascal語言的嚴謹加上視覺化的優勢和強大的資料庫功能使得它有充分的資本和微軟的vb叫板。許多人當時都認為pascal 是最有前途的程式設計語言,並**delphi將會成為視覺化程式設計的主流環境。

delphi在你編好程式後自動轉換成.exe檔案它執行時速度比vb快,而且編譯後不需要其他的支援庫就能執行。它的資料庫功能也挺強的,是開發中型資料庫軟體理想的程式設計工具。

delphi適用於應用軟體、資料庫系統、系統軟體等型別的開發。而且它擁有和vb差不多一樣的功能,而且一樣能應用api函式,這在控制windows很有用。

delphi是全新的視覺化程式設計環境,為我們提供了一種方便、快捷的windows應用程式開發工具。它使用了microsoft windows圖形使用者介面的許多先進特性和設計思想,採用了彈性可重複利用的完整的物件導向程式語言(object-oriented language)、當今世界上最快的編輯器、最為領先的資料庫技術。對於廣大的程式開發人員來講,使用delphi開發應用軟體,無疑會大大地提高程式設計效率,而且隨著應用的深入,您將會發現程式設計不再是枯燥無味的工作——delphi的每一個設計細節,都將帶給您一份欣喜。

delphi的基本形式

delphi實際上是pascal語言的一種版本,但它與傳統的pascal語言有天壤之別。一個delphi程式首先是應用程式框架,而這一框架正是應用程式的「骨架」。在骨架上即使沒有附著任何東西,仍可以嚴格地按照設計執行。

您的工作只是在「骨架」中加入您的程式。預設的應用程式是一個空白的窗體(form),您可以執行它,結果得到一個空白的視窗。這個視窗具有windows視窗的全部性質:

可以被放大縮小、移動、最大最小化等,但您卻沒有編寫一行程式。因此,可以說應用程式框架通過提供所有應用程式共有的東西,為使用者應用程式的開發打下了良好的基礎。

delphi已經為您做好了一切基礎工作——程式框架就是一個已經完成的可執行應用程式,只是不處理任何事情。您所需要做的,只是在程式中加入完成您所需功能的**而已。 在空白視窗的背後,應用程式的框架正在等待使用者的輸入。

由於您並未告訴它接收到使用者輸入後作何反應,視窗除了響應windows的基本操作(移動、縮放等)外,它只是接受使用者的輸入,然後再忽略。delphi把windows程式設計的**、控制代碼處理等繁複過程都放在一個不可見的romulam覆蓋物下面,這樣您可?/td>

7樓:匿名使用者

delphi 用的是pascal 語言.現在一說到pascal語言,人家就會想到delphi了.

8樓:匿名使用者

編譯器,一般是用c++或彙編,delphi應該是c++吧

9樓:

p a s c a l

delphi編譯器現在到底怎樣了,到底屬於哪個公司?

10樓:匿名使用者

delphi編譯器編譯效率高速度快,它是寶蘭公司的

delphi 執行和開發效率高嗎?

11樓:匿名使用者

就拿資料說話!看這個查詢質數的程式,分辨用vc2008和delphi7編寫的,相對而言delphi7更古老,早了6年,但執行效率絲毫不比vc差,迴圈10次vc耗時6062毫秒,delphi耗時6031毫秒,幾乎一致,這點差距完全屬於誤差範疇。

下面那個什麼「極天異雲」就是個delphi黑,毫無常識,什麼delphi速度低10倍,笑死人!

12樓:匿名使用者

delphi為公認的開發效率最高的一門語言。語法優美,編寫及可讀性極強。

新人學C 用什麼編譯器好

最常用的是vs2003和vs2005 2008目前還沒什麼公司使用,多半是個人。另外2003在裝的時候經常出現莫名其妙的問題就裝不起。2005不會,並且2005有很多方便的熱鍵可以用,不過2005帶有智慧感知,可以幫你補充上你可能需要的資料。但是如果你使用va外掛幫助程式設計的話,會比2005自帶的...

這段程式是什麼意思,編譯器出來的答案是2341,但是沒看懂,求大神解答 謝謝

主要是 函式f,具體作用是 查詢輸入引數中的前一個陣列中沒有出現在後一個陣列的元素,依次儲存在新的陣列中,並返回未出現元素的總個數 main函式就為 f函式提供輸入引數,並把未出現的元素再一一列印出來。這段 的意思就是對比兩個陣列a和b,找出只在a中出現的數字 a中有而b中沒 有的數字 接著我們來走...

脈衝布袋除塵器除塵效率怎麼樣子,脈衝布袋除塵器除塵效率怎麼樣子?

脈衝布袋除塵器除塵效率是所有除塵裝置中最好的一種,目前脈衝布袋除塵器在除塵淨化行業中市場佔有率達80 它之所以會有如此好的佔有率,就是因為脈衝布袋除塵器除塵效率要比任何一種種型的除塵器除塵效率都高。除塵效率的好壞是衡量一臺裝置最基本的引數,除塵效率表示布袋除塵器處理含塵氣體能力的好壞,它與除塵布袋除...