程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> 關於C++ >> C++的可移植性和跨平台開發[1]:編譯器

C++的可移植性和跨平台開發[1]:編譯器

編輯:關於C++

在跨平台的開發過程中,很多問題都和編譯器有關。因此我們先來聊聊編譯器相關的問題 。

★編譯器的選擇

首先,GCC是優先要考慮支持的,因為幾乎所有操作系統平台都有GCC可用。它基本上成了 一個通用的編譯器了。如果你的代碼在A平台的GCC能夠編譯通過,之後拿到B平台用類似版本 的GCC編譯,一般也不會有太大問題。因此GCC是肯定要考慮支持的。

其次,要考慮是否支持本地編譯器。所謂本地編譯器就是操作系統廠商自產的編譯器。例 如相對於Windows的本地編譯器就是Visual C++。相對於Solaris的本地編譯器就是SUN的CC。 如果你對性能比較敏感或者想用到某些本地編譯器的高級功能,可能就得考慮在支持GCC的同 時也支持本地編譯器。

★編譯警告

編譯器是程序員的朋友,很多潛在的問題(包括可移植性),編譯器都是可以發現並給出 警告的,如果你平時注意這些警告信息,可以減少很多麻煩。因此我強烈建議:1把編譯器的 警告級別調高;2不要輕易忽略編譯器的警告信息。

★交叉編譯器

交叉編譯器的定義參見“維基百科”。通俗地說,就是在A平台上編譯出運行 在B平台上的二進制程序。假設你要開發的應用是運行在Solaris上,但是你手頭沒有能夠運 行Solaris的SPARC機器,這時候交叉編譯器就可以派上用場了。一般情況下都使用GCC來制作 一個交叉編譯器,限於篇幅,這裡就不深入聊了。有興趣的同學可以參見"這裡" 。

關於編譯器的話題,暫時聊到這,後面聊聊關於“語法”的問題。

原始地址:http://program-think.blogspot.com/

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved