首頁 > 後端開發 > C++ > 如何在編譯過程中檢查 C 11 支援?

如何在編譯過程中檢查 C 11 支援?

Linda Hamilton
發布: 2024-12-07 13:09:15
原創
430 人瀏覽過

How Can I Check for C  11 Support During Compilation?

在編譯時確定 C 11 支援

C 程式設計師通常需要確定其編譯器是否支援 C 11 的特定功能,以確保與其程式碼的相容性。以下是實現此目的的方法:

利用 __cplusplus 常數

某些編譯器提供名為 __cplusplus 的常數,它指示支援的 C 標準版本。以下範例檢查 C 11 支援:

#if __cplusplus <= 199711L
  #error This library needs at least a C++11 compliant compiler
#endif
登入後複製

利用 Boost 宏

另一個選項是使用 Boost 庫中的宏,它提供了特定 C 11功能的定義,例如如:

  • BOOST_CXX11_VARIADIC_MACROS
  • BOOST_CXX11_THREADS
#ifndef BOOST_CXX11_VARIADIC_MACROS

#error "Your compiler doesn't support variadic templates."

#else

template <typename... DatatypeList>
class Tuple
{
    // ...
}

#endif
登入後複製

以上是如何在編譯過程中檢查 C 11 支援?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板