using-Verwendung ist: 1. Namespace [using namespace namespace] 2. Typalias [using aa=double] 3. Ändern Sie die Zugriffsebene der von der Basisklasse geerbten Mitglieder; Alle überladenen Funktionen sind sichtbar. 5. Lassen Sie die abgeleitete Klasse alle Konstruktoren erben.
【Verwandte Lernempfehlungen: C-Sprach-Tutorial-Video】
Verwendung ist:
1. Namespace.
rrreeHinweis: Die Header-Datei sollte nicht dort sein ist eine Deklaration zur Verwendung des Namensraums
2. Geben Sie den Alias (C++11) ein. Ändern Sie die Zugriffsebene der von der Basisklasse geerbten Mitglieder zur Basisklasse Alle überladenen Funktionen in sind sichtbar statt ausgeblendet
using namespace 命名空间;//这样每次使用命名空间中的变量时就不用指定命名空间了
5. Durch die Aktualisierung von Punkt 4 kann die abgeleitete Klasse alle Konstruktoren der direkten Basisklasse erben
1) Abgeleitete Klassen erben nicht auf herkömmliche Weise Der Konstruktor der Basisklasse, aber verwenden Sie die using-Anweisung, um die abgeleitete Klasse alle (mit zwei Ausnahmen) Konstruktoren der Basisklasse erben zu lassen2) Ausnahme 1: Der eigene Konstruktor der abgeleiteten Klasse und ein bestimmter Konstruktor von Die Basisklasse Wenn dieselben formalen Parameter vorhanden sind, wird der Konstruktor nicht geerbt
Ausnahme 2: Die Standard-, Kopier- und Verschiebungskonstruktoren werden nicht geerbt3) Im Gegensatz zu Punkt 3 ändert die using-Anweisung den geerbten Konstruktor nicht Zugriffsebene: Unabhängig davon, wo die using-Anweisung erscheint, ist der öffentliche/geschützte/private Konstruktor der Basisklasse immer noch ein öffentlicher/geschützter/privater Konstruktor in der abgeleiteten Klasse.
4) Die using-Anweisung kann nicht explizit und constexpr: if angeben die Basisklasse Wenn der Konstruktor einer Klasse explizit oder constexpr ist, hat der geerbte Konstruktor auch die gleichen Attribute
5) Der geerbte Konstruktor ist kein benutzerdefinierter Konstruktor, sodass er dennoch die Generierungsregeln synthetischer Konstruktoren erfüllen kann
6) Wenn der Konstruktor der Basisklasse Standardparameter hat, werden die Standardparameter nicht vererbt. 7) Wenn der Konstruktor der Basisklasse zwei formale Parameter hat, hat ein Parameter keine Standardparameter und der andere Parameter hat Standardparameter Durch Vererbung werden zwei Konstruktoren erhalten: Ein Konstruktor hat zwei formale Parameter und der andere hat nur einen formalen Parameter (entsprechend dem ohne Standard-Aktualparameter). Kurz gesagt, die Standard-Aktualparameter werden nicht vererbt
using aa = double;//等价于typedef double aa typedef double db, *p;//db是double的同义词,p是double*的同义词(注意)
Das obige ist der detaillierte Inhalt vonWas ist die Verwendung von using. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!