using
Főnév
using (tsz. usings)
- (informatika) A
usingdirektíva a C++ nyelvben egy olyan eszköz, amely megkönnyíti a névterek és típusok kezelését. Magyarul az alábbi értelemben használható:
Névtér beemelése (
using namespace)
Ez a direktíva lehetővé teszi, hogy egy adott névtérben lévő elemeket névtér-prefixum nélkül használjuk.#include <iostream> using namespace std; // A std névtér beemelése int main() { cout << "Hello, world!" << endl; // Nem kell std::cout és std::endl return 0; }
Magyarul: Névtér használata, névtér beemelése.
Fontos megjegyzés: A
using namespacedirektíva globális térben történő alkalmazása nem mindig ajánlott, mert névütközéseket okozhat.Típusalias létrehozása (
usingtípusként)
A C++11-ben bevezetettusingszinonimája atypedef-nek, és könnyebben olvasható aliasokat hoz létre.using Szam = int; // Szam most egy alternatív név az int típusra Szam a = 10;
Magyarul: Típusnév alias létrehozása.
Függvény név átvétele származtatott osztályba (
usingkulcsszóval)
Egy osztály öröklődésekor lehetőség van a szülőosztály azonos nevű függvényeinek láthatóvá tételére a gyermekosztályban.class Alap { public: void f(int) {} }; class Szarmaztatott : public Alap { public: using Alap::f; // Az Alap osztály f függvénye láthatóvá válik void f(double) {} };
Magyarul: Szülőosztály függvényének láthatóvá tétele.
Sablon aliasok (
usingsablonokhoz)
Ausingsegítségével sablon-aliasokat is létrehozhatunk.template <typename T> using Ptr = T*; // Mostantól Ptr<T> egy T* típusú mutató Ptr<int> p; // int*
Magyarul: Sablon alias létrehozása.
Összegzés:
- using namespace: Névtér beemelése.
- using Típusnév = MásikTípus: Típus alias létrehozása.
- using Alap::f: Öröklött függvények láthatóvá tétele.
- using SablonAlias = Sablon<...>: Sablon alias létrehozása.