Maison > développement back-end > C++ > La différence entre :: et : en C++

La différence entre :: et : en C++

下次还敢
Libérer: 2024-04-26 17:57:15
original
980 Les gens l'ont consulté

Le double deux-points (::) est utilisé pour la résolution de la portée de l'espace de noms et l'accès aux membres statiques de la classe, et le simple deux-points (:) est utilisé pour l'initialisation de la classe de base et la conversion de type implicite.

La différence entre :: et : en C++

Différence entre :: et : en C++

Dans le langage de programmation C++, les opérateurs double deux-points (::) et single colon (:) ont des usages et des significations différents.

Double deux-points (::)

Double deux-points (::) l'opérateur est utilisé dans les scénarios suivants :

  • Résolution de la portée de l'espace de noms : L'accès à un espace de noms imbriqué, un élément d'espace de noms externe est utilisé. Par exemple :
<code class="cpp">namespace outer {
  int x = 10;
}

namespace inner {
  void printX() {
    std::cout << outer::x << std::endl;
  }
}</code>
Copier après la connexion
  • Accès aux membres statiques de classe : Utilisé lors de l'accès aux fonctions membres statiques ou aux variables d'une classe. Par exemple : 
<code class="cpp">class MyClass {
public:
  static int numInstances = 0;
  
  static void printNumInstances() {
    std::cout << numInstances << std::endl;
  }
};</code>
Copier après la connexion

Single colon(:)

Single colon(:) est utilisé dans les scénarios suivants :

  • Initialisation de la classe de base : Utilisé lors de l'initialisation des membres de la classe de base dans la classe dérivée constructeur. Par exemple :
<code class="cpp">class Base {
public:
  int x;
};

class Derived : public Base {
public:
  Derived(int x) : x(x) {}
};</code>
Copier après la connexion
  • Conversion de type implicite : Utilisé pour forcer une valeur d'un type à un autre type. Par exemple :
<code class="cpp">int x = 10;
double y = static_cast<double>(x);</code>
Copier après la connexion

Summary

Le double deux-points (::) est utilisé pour la résolution de la portée de l'espace de noms et l'accès aux membres statiques de la classe, tandis que le simple deux-points (:) est utilisé pour l'initialisation de la classe de base et la conversion de type implicite.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal