C++中的函式簽名
C++中的函式簽名(function signature):包含了一個函式的資訊,包括函式名、引數型別、引數個數、順序以及它所在的類和名稱空間。普通函式簽名並不包含函式返回值部分,如果兩個函式僅僅只有函式返回值不同,那麼系統是無法區分這兩個函式的,此時編譯器會提示語法錯誤。函式簽名用於識別不同的函式,函式的名字只是函式簽名的一部分。在編譯器及連結器處理符號時,使用某種名稱修飾的方法,使得每個函式簽名對應一個修飾後名稱(decorated name)。編譯器在將C++原始碼編譯成目標檔案時,會將函式和變數的名字進行修飾,形成符號名,也就是說,C++的原始碼編譯後的目標檔案中所使用的符號名是相應的函式和變數的修飾後名稱。C++編譯器和連結器都使用符號來識別和處理函式和變數,所以對於不同函式簽名的函式,即使函式名相同,編譯器和連結器都認為它們是不同的函式。
不同的編譯器廠商的名稱修飾方法可能不同,所以不同的編譯器對於同一個函式簽名可能對應不同的修飾後名稱。
For functions that are specializations of function templates, the signature includes the return type. For functions that are not specializations, the return type is not part of the signature.
A function signature consists of the function prototype. What it tells you is the general information about a function, its name, parameters, what scope it is in, and other miscellaneous information.
Two overloaded functions must not have the same signature.
Default Arguments: The last parameter or parameters in a function signature may be assigned a default argument, which means that the caller may leave out the argument when calling the function unless they want to specify some other value.
注:以上內容來自於網路整理。
相關文章
- 函式簽名函式
- 基於雜湊函式的簽名,Part-1函式
- C++中的strrev函式C++函式
- C++中strlen函式C++函式
- C++中函式呼叫的用法C++函式
- C++ 中的虛擬函式C++函式
- C++中的回撥函式C++函式
- C++中函式指標與函式物件C++函式指標物件
- c++中訊息函式 -- GetMessage函式C++函式
- C/C++—— C++中函式重寫和函式過載C++函式
- C++中的函式指標和函式物件總結C++函式指標物件
- [cpp]C++中的解構函式C++函式
- C++ functional庫中的仿函式C++Function函式
- C++中compare函式的使用C++函式
- C++中虛擬函式的作用C++函式
- 談談C++中的swap函式C++函式
- c++中內建函式C++函式
- C/C++—— C++中建構函式不能是虛擬函式的原因分析C++函式
- C++中的虛擬函式與虛擬函式表 (轉)C++函式
- C++函式中那些不可以被宣告為虛擬函式的函式C++函式
- C++中push_back()函式的用法C++函式
- C++中的虛擬函式(virtual function)C++函式Function
- 關於C++當中的“模板函式”C++函式
- C++名稱空間與友元函式薦C++函式
- C++的函式式革命C++函式
- C++的函式和模板函式 (轉)C++函式
- php中basename()函式返回路徑中的檔名部分PHP函式
- C++中建構函式,拷貝建構函式和賦值函式的詳解C++函式賦值
- 群簽名與環簽名的介紹
- 118 C++中函式的過載C++函式
- C/C++中的日期和時間函式C++函式
- c++的remove函式C++REM函式
- BTC中的簽名演算法ECDSA演算法
- C/C++—— C++中定義虛解構函式的原因C++函式
- C++函式C++函式
- 【C++】函式C++函式
- C++中抽象類、虛擬函式和純虛擬函式C++抽象函式
- c++智慧指標中的reset成員函式C++指標函式