VC++官方團隊系列文章:優化C++程式碼(1):簡介

JingerJoe發表於2013-09-02

伯樂線上注:“優化C++程式碼”系列博文,C++程式媛 JingerJoe@米可_GO)將會持續更新翻譯,感興趣的朋友,請收藏並關注。如果其他朋友也有不錯的原創或譯文,可以嘗試推薦給伯樂線上

 

前言

大家好,我是Jim Hogg,是一名專案經理,在微軟雷德蒙德總部的 Visual C++ 編譯團隊工作。具體來講,我們的編譯器可以優化你的程式碼,既能讓它執行得很快,又可以使你的程式碼更簡潔。

在這一系列博文裡,我會講解一些能夠讓你的程式碼執行得更快的一些優化方法。我還會引入一些例子,看看各種各樣的程式碼優化會帶來哪些好處。然後我將講述一些我們團隊新新增的一些優化方法, 看起來不怎麼明顯,卻讓你的程式碼有著驚人的改變。

這個系列博文適合於哪些人閱讀呢?任何對編譯原理感興趣的人,想知道編譯器是如何讓你的程式碼執行更快的。另一方面,有一些阻止或者抑制優化的模式,掌握了這些知識,你就可以隨意優化你的程式碼,讓程式跑得更快。

要理解這些文章,需要掌握哪些預備知識呢? 首先要有C或C++的程式設計基礎(大多數的例子,我都是用的C,以便於理解,只有到最後,才會有一些特定於C++程式碼的優化檢查――像去虛擬化)。最好還能看懂64位的彙編程式碼,這樣你就能夠看到程式碼優化帶來的變化。但這不是一個硬性要求――我會盡力提供一些見解,而不是去深挖那些編譯器自動生成的二進位制機器碼。

我建立了一個列表,包含了該系列部落格文章的目錄,每次釋出文章,都會更新。

01. 前言(此篇文章)
02. 概述――C++程式碼的編譯過程
03. 合併常量
04. 消除冗餘程式碼
05. ..
06. …
07. 行內函數
08. …
09. …
10. 全程式優化(連結時程式碼生成)
11. …

 

相關文章