四、巨集: (其實呢, 我們所有的巨集都包含在了 "stl_config.h"標頭檔案中。)
//這些巨集是怎麼判斷是否需要定義:是否有指定的巨集,還有一些特定的編譯器也可能支援。
4.1、 __stl_throw_range_errors //允許丟擲範圍異常。
4.2、 __stl_no_bool //沒有定義原生_bool : if !define(_bool) __stl_no_bool
4.3、 __stl_has_wchar_t //有wchar_t型別。 if define(_whcar_t_is_keyword) define __stl_has_wchar_t
4.4、 __stl_no_drand48 //不存在drand48 這個函式
4.5、 __stl_static_template_member_bug //不支援在模板類中定義乙個靜態成員。
4.6、 __stl_static_const_init_bug //支援static const int 型別可以直接在類中初始化。
4.7、 __stl_class_partial_specialization //支援區域性特化。
4.8、 __stl_partial_specialization_syntax //類模板的部分排序(最近似推導)。
4.9、 __stl_function_tmpl_partial_order //函式模板的部分排序(最近似推導)。
4.10、__stl_member_templates //支援模板類中還可以存在模板函式。
4.11、__stl_member_template_classes //支援模板類中存在內部類(內部類只能在當前類中進行使用)。
4.12、__stl_template_priends //支援乙個模板類可以成為其他類的友元類。
4.13、__stl_explicit_function_tmpl_args //支援函式對模板引數的推導。
4.14、__stl_limited_default_templates //支援前乙個模板引數為後乙個模板的預設值。
4.15、__stl_non_type_tmpl_param_bug //支援 template這種情況。
4.16、__sgi_stl_no_arrow_operator //不支援iterator 過載 -> 操作符。
4.17、__stl_default_constructor_bug //不支援 類似 int(10) 這種做法。
4.18、__stl_use_exceptions //支援異常。
4.19、__stl_use_namespaces //支援命名空間。
4.20、__stl_no_exception_header //沒有exception的標頭檔案
4.21、__stl_no_bad_alloc //沒有或者 標頭檔案中沒有bad_alloc class.
4.22、__stl_long_long //支援long long
4.23、__stl_use_concept_checks
4.24、__stl_no_using_clause_in_class //不支援類定義當中使用using。
4.25、__stl_no_friend_template_class //不支援模板類成為其他類的有元。
4.26、__stl_no_function_ptr_in_class_template //不支援乙個指標成為乙個模板引數。
4.27、__stl_member_template_keyword
4.28、使用例項:
4.28.1、#define _begin_namespace namespace xiaohai;
巨集定義基本使用
參照c語言的預處理命令簡介 define 定義乙個預處理巨集 undef 取消巨集的定義 include 包含檔案命令 include next 與 include相似,但它有著特殊的用途 if 編譯預處理中的條件命令,相當於c語法中的if語句 ifdef 判斷某個巨集是否被定義,若已定義,執行隨後...
巨集定義基本用法
巨集定義又稱為巨集代換 巨集替換,簡稱 巨集 格式 define 識別符號 字串其中的識別符號就是所謂的符號常量,也稱為 巨集名 預處理 預編譯 工作也叫做巨集展開 將巨集名替換為字串。掌握 巨集 概念的關鍵是 換 一切以換為前提 做任何事情之前先要換,準確理解之前就要 換 例 define pi ...
基本標示符 巨集 編譯連線
勵志做乙個文藝程式設計師的我,發現自己還是缺少文藝細胞,所以部落格名字非常直白,就是來說一說基本標示符合巨集以及編譯連線的過程。首先是基本標示符,這就簡單來談四個 file line date time 第乙個 file 顧名思義就是檔案的儲存位置,這個在列印語句中是用 s來輸出的 第二個 line...