名稱空間
變體
操作

標點

來自 cppreference.com
< cpp‎ | 語言
 
 
C++ 語言
表示式
替代表示
字面量
布林型 - 整型 - 浮點型
字元型 - 字串型 - nullptr (C++11)
使用者定義 (C++11)
工具
屬性 (C++11)
型別
typedef 宣告
類型別名宣告 (C++11)
型別轉換
記憶體分配
類特有的函式屬性
explicit (C++11)
static

特殊成員函式
模板
雜項
 
 

這些是 C++ 中的標點符號。每個符號的含義在連結的頁面中詳細說明。

目錄

[編輯] 預處理運算子

預處理運算子由預處理器識別。

[編輯] # (包括 %:)

[編輯] ##(包括 %:%:)

[編輯] 單字元運算子和標點符號

[編輯] {} (包括 <%%>)

(C++11 起)
(C++20 起)

[編輯] [] (包括 <::>)

(C++11 起)
(C++17 起)
(C++26 起)

[編輯] ()

(C++11 起)
(C++11 起)
(C++17 起)
(C++20 起)
(C++11 起)
  • 處理程式中,分隔引數宣告。
  • 函式式宏定義中,分隔宏引數。
  • 函式式宏呼叫中,分隔宏引數或防止逗號被解釋為引數分隔符。
  • defined__has_include(C++17 起)__has_cpp_attribute(C++20 起)預處理運算子的一部分。
  • static_assert 宣告中,分隔運算元。
  • 分隔以下說明符的運算元
(C++20 起)
  • 屬性中,分隔屬性引數。
(C++11 起)
(C++14 起)
(C++17 起)
  • 變參宏定義中 __VA_OPT__ 替換的一部分。
(C++20 起)

[編輯] ;

  • 表示以下內容的結束
  • 模組宣告、匯入宣告、全域性模組片段引入器或私有模組片段引入器
  • 需求
(C++20 起)

[編輯] :

(C++11 起)
(C++17 起)
(C++20 起)

[編輯] ?

[編輯] .

(C++20 起)

[編輯] ~ (包括 compl)

[編輯] ! (包括 not)

(C++23 起)

[編輯] +

[編輯] -

[編輯] *

  • lambda 捕獲列表中,作為 *this 的一部分,用於按值捕獲當前物件。
(C++17 起)

[編輯] /

[編輯] %

[編輯] ^ (包括 xor)

[編輯] & (包括 bitand)

(C++11 起)

[編輯] | (包括 bitor)

[編輯] =

(C++11 起)
  • 概念定義中,分隔概念名稱和約束表示式。
(C++20 起)

[編輯] <

(C++20 起)
  • 模板特化宣告中,作為 template<> 的一部分。
  • 在以下內容中引入標頭檔案名稱
(C++17 起)
(C++20 起)

[編輯] >

(C++20 起)
  • 模板特化宣告中,作為 template<> 的一部分。
  • 表示標頭檔案名的結束
(C++17 起)
(C++20 起)

[編輯] ,

(C++11 起)
(C++17 起)
(C++23 起)
(C++11 起)

[編輯] 多字元運算子和標點符號

[編輯] ...

  • 在函式宣告符或 lambda 表示式(C++11 起)或使用者定義推導指南(C++17 起)引數列表中,表示變參函式
  • 處理程式中,表示 catch-all 處理程式。
  • 宏定義中,表示變參宏。
  • 表示宣告和展開。
(C++11 起)
(C++26 起)

[編輯] ::

  • 作用域解析運算子在
  • 屬性中,表示屬性作用域。
(C++11 起)
(C++17 起)

[編輯] .*

[編輯] ->

(C++11 起)
(C++17 起)
(C++20 起)

[編輯] ->*

[編輯] +=

[編輯] -=

[編輯] *=

[編輯] /=

[編輯] %=

[編輯] ^= (包括 xor_eq)

[編輯] &= (包括 and_eq)

[編輯] |= (包括 or_eq)

[編輯] ==

[編輯] != (包括 not_eq)

[編輯] <=

[編輯] >=

<=>

(C++20 起)

[編輯] && (包括 and)

(C++11 起)

[編輯] || (包括 or)

[編輯] <<

[編輯] >>

[編輯] <<=

[編輯] >>=

[編輯] ++

[編輯] --

[編輯] 參考文獻

  • C++23 標準 (ISO/IEC 14882:2024)
  • 5.12 運算子和標點符號 [lex.operators]
  • C++20 標準 (ISO/IEC 14882:2020)
  • 5.12 運算子和標點符號 [lex.operators]
  • C++17 標準 (ISO/IEC 14882:2017)
  • 5.12 運算子和標點符號 [lex.operators]
  • C++14 標準 (ISO/IEC 14882:2014)
  • 2.13 運算子和標點符號 [lex.operators]
  • C++11 標準 (ISO/IEC 14882:2011)
  • 2.13 運算子和標點符號 [lex.operators]
  • C++03 標準 (ISO/IEC 14882:2003)
  • 2.12 運算子和標點符號 [lex.operators]
  • C++98 標準 (ISO/IEC 14882:1998)
  • 2.12 運算子和標點符號 [lex.operators]

[編輯] 另請參閱

替代表示 某些運算子的替代拼寫[編輯]
C 文件中的 標點符號