雙冒號 (::) 用於命名空間作用域解析和類別靜態成員訪問,單冒號 (:) 用於基底類別初始化和隱式類型轉換。
C 中:: 和: 的區別
在C 程式語言中,雙冒號( ::) 和單冒號(:) 運算子有不同的用法和意義。
雙冒號(::)
雙冒號(::) 運算子用於下列場景:
<code class="cpp">namespace outer { int x = 10; } namespace inner { void printX() { std::cout << outer::x << std::endl; } }</code>
<code class="cpp">class MyClass { public: static int numInstances = 0; static void printNumInstances() { std::cout << numInstances << std::endl; } };</code>
單冒號(:)
#單冒號(:) 運算子用於下列場景:
<code class="cpp">class Base { public: int x; }; class Derived : public Base { public: Derived(int x) : x(x) {} };</code>
<code class="cpp">int x = 10; double y = static_cast<double>(x);</code>
總結
雙冒號(::) 用於命名空間作用域解析和類別靜態成員訪問,而單冒號(:)用於基底類別初始化和隱式類型轉換。
以上是c++中::和:的區別的詳細內容。更多資訊請關注PHP中文網其他相關文章!