注入類別名稱:目的和歷史演變
注入類別名稱的概念是指類別在其自身內部的隱式聲明範圍。這允許在類別主體中使用類別名稱來引用類別本身,即使在封閉範圍內存在具有相同名稱的其他實體也是如此。
注入類別名稱的用途
注入的類別名稱有幾個實際用途,包括:
歷史簡介
注入類名的概念甚至在 C 之前就以某種形式存在。 ARM(Ada 參考手冊)規定類別名稱可以在類別說明符中使用來引用類別本身。
在 C 98 中,注入的類別名稱被隱式插入到類別的作用域中。然而,術語「注入類別名稱」是在 C 03 的 DR 147 中引入的。
範例用例
考慮以下類別:
class X { public: static X create() { return X(); } };
如果沒有註入的類別名,就不清楚create() 是建立一個暫存X 物件還是呼叫函數X。注入的類別名稱確保在 X 的主體內,名稱 X 始終引用類別本身,從而消除 create() 的意圖的歧義。
以上是什麼是注入類別名稱及其用途如何演變?的詳細內容。更多資訊請關注PHP中文網其他相關文章!