[英]What does the “::” mean in C++?
這個符號是什么意思?
AirlineTicket::AirlineTicket()
::是范圍解析運算符 - 用於限定名稱。 在這種情況下,它用於將類AirlineTicket
與構造函數AirlineTicket()
分開,形成限定名稱AirlineTicket::AirlineTicket()
無論何時你需要明確你所指的是什么,你都可以使用它。 一些樣品:
namespace foo {
class bar;
}
class bar;
using namespace foo;
現在,您必須使用范圍解析運算符來引用特定的條形圖。
::foo::bar
是一個完全限定的名稱。
::bar
是另一個完全限定的名稱。 ( ::
首先表示“全局命名空間”)
struct Base {
void foo();
};
struct Derived : Base {
void foo();
void bar() {
Derived::foo();
Base::foo();
}
};
這使用范圍分辨率來選擇foo的特定版本。
在C ++中, ::
被稱為范圍解析運算符 。 它清楚地表明了符號所屬的命名空間或類。
它聲明了一個命名空間。 所以在AirlineTicket ::中你可以調用AirlineTicket類的所有公共函數,而AirlineTicket()是該命名空間中的函數(在本例中是構造函數)。
AirlineTicket就像是您班級的命名空間。 您必須在構造函數的實現中使用它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.