Megosztás a következőn keresztül:


Útmutató: Statikus kódtár létrehozása és használata

Ez a részletes útmutató bemutatja, hogyan hozhat létre statikus kódtárat (.lib-fájlt) c++ alkalmazásokhoz. A statikus kódtárak használata nagyszerű módszer a kód újrafelhasználására. Ahelyett, hogy újraimplementálnál ugyanazokat a rutinokat minden olyan alkalmazásban, amely megköveteli a funkcionalitást, egyszer megírod őket egy statikus könyvtárban, majd az alkalmazások azokra hivatkozhatnak. A statikus kódtárból csatolt kód az alkalmazás részévé válik – a kód használatához nem kell másik fájlt telepítenie.

Ez az útmutató a következő feladatokat ismerteti:

Előfeltételek

A C++ nyelv alapjainak ismerete.

Statikus kódtárprojekt létrehozása

A projekt létrehozásának utasításai a Visual Studio verziójától függően változnak. A Visual Studio előnyben részesített verziójának dokumentációját a Verzió választóvezérlő használatával tekintheti meg. A lap tartalomjegyzékének tetején található.

Statikus kódtárprojekt létrehozása a Visual Studióban

  1. A menüsávOn válassza azÚj>projekt> lehetőséget az Új projekt létrehozása párbeszédpanel megnyitásához.

  2. A párbeszédpanel tetején állítsa a Nyelv elemet C++-ra, állítsa a PlatformotWindowsra, és állítsa a Projekt típusátkódtárra.

  3. A projekttípusok szűrt listájában válassza a Windows Asztali varázslót, majd a Tovább gombot.

  4. Az új projekt konfigurálása lapon írja be a MathLibrary kifejezést a Projekt neve mezőbe, és adja meg a projekt nevét. Írja be a StaticMath kifejezést a Megoldás neve mezőbe. A Létrehozás gombra kattintva nyissa meg a Windows Asztali projekt párbeszédpanelt.

  5. A Windows Asztali projekt párbeszédpanel Alkalmazástípus területén válassza a Statikus tár (.lib) lehetőséget.

  6. A További beállítások csoportban törölje a jelet az Előre összeállított fejléc jelölőnégyzetből, ha be van jelölve. Jelölje be az Üres projekt jelölőnégyzetet.

  7. Válassza az OK gombot a projekt létrehozásához.

Statikus kódtárprojekt létrehozása a Visual Studio 2017-ben

  1. A menüsávon válassza a Fájl>Új>Projekt lehetőséget.

  2. Az Új projekt párbeszédpanelen válassza a Telepített>Visual C++>Windows Desktop lehetőséget. A középső panelen válassza a Windows Asztal varázslót.

  3. Adja meg a projekt nevét (például MathLibrary) a Név mezőben. Adja meg a megoldás nevét (például StaticMath) a Megoldásnév mezőben. Válassza az OK gombot.

  4. A Windows Asztali projekt párbeszédpanel Alkalmazástípus területén válassza a Statikus tár (.lib) lehetőséget.

  5. A További beállítások csoportban törölje a jelölést az Előre összeállított fejléc jelölőnégyzetből, ha be van jelölve. Jelölje be az Üres projekt jelölőnégyzetet.

  6. Válassza az OK gombot a projekt létrehozásához.

Statikus kódtárprojekt létrehozása a Visual Studio 2015-ben

  1. A menüsávon válassza a Fájl>Új>Projekt lehetőséget.

  2. Az Új projekt párbeszédpanelen válassza a Telepített>sablonok>Visual C++>Win32 lehetőséget. A középső panelen válassza a Win32 Konzolalkalmazás lehetőséget.

  3. Adja meg a projekt nevét (például MathLibrary) a Név mezőben. Adja meg a megoldás nevét (például StaticMath) a Megoldásnév mezőben. Válassza az OK gombot.

  4. A Win32 alkalmazásvarázslóban válassza a Tovább gombot.

  5. Az Alkalmazásbeállítások lap Alkalmazástípus területén válassza a Statikus tár lehetőséget. A További beállítások csoportban törölje a jelet az Előre összeállított fejléc jelölőnégyzetből. A projekt létrehozásához válassza a Befejezés lehetőséget.

Osztály hozzáadása a statikus tárhoz

Osztály hozzáadása a statikus tárhoz

  1. Új osztály fejlécfájljának létrehozásához kattintson a jobb gombbal a MathLibrary projekt helyi menüjének megnyitásához a Megoldáskezelőben, majd válassza az Új elem hozzáadása>parancsot.

  2. Az Új elem hozzáadása párbeszédpanelen válassza a Visual C++>Code elemet. A középső panelen válassza a Fejlécfájl (.h) lehetőséget. Adja meg a fejlécfájl nevét (például MathLibrary.h), majd válassza a Hozzáadás gombot. Megjelenik egy majdnem üres fejlécfájl.

  3. Adjon hozzá egy deklarációt egy olyan osztályhoz, amely Arithmetic olyan általános matematikai műveleteket hajt végre, mint az összeadás, kivonás, szorzás és osztás. A kódnak a következőhöz kell hasonlítania:

    // MathLibrary.h
    #pragma once
    
    namespace MathLibrary
    {
        class Arithmetic
        {
        public:
            // Returns a + b
            static double Add(double a, double b);
    
            // Returns a - b
            static double Subtract(double a, double b);
    
            // Returns a * b
            static double Multiply(double a, double b);
    
            // Returns a / b
            static double Divide(double a, double b);
        };
    }
    
  4. Ha forrásfájlt szeretne létrehozni az új osztályhoz, nyissa meg a MathLibrary projekt helyi menüjét a Megoldáskezelőben, majd válassza azÚj elem> lehetőséget.

  5. Az Új elem hozzáadása párbeszédpanel középső panelén válassza a C++ Fájl (.cpp) lehetőséget. Adja meg a forrásfájl nevét (például MathLibrary.cpp), majd válassza a Hozzáadás gombot. Megjelenik egy üres forrásfájl.

  6. Ezzel a forrásfájllal implementálhatja az osztály Arithmeticfunkcióit. A kódnak a következőhöz kell hasonlítania:

    // MathLibrary.cpp
    // compile with: cl /c /EHsc MathLibrary.cpp
    // post-build command: lib MathLibrary.obj
    
    #include "MathLibrary.h"
    
    namespace MathLibrary
    {
        double Arithmetic::Add(double a, double b)
        {
            return a + b;
        }
    
        double Arithmetic::Subtract(double a, double b)
        {
            return a - b;
        }
    
        double Arithmetic::Multiply(double a, double b)
        {
            return a * b;
        }
    
        double Arithmetic::Divide(double a, double b)
        {
            return a / b;
        }
    }
    
  7. A statikus könyvtár létrehozásához válassza a menüsávon a Build>Build megoldás parancsot. A build létrehoz egy statikus kódtárat ( MathLibrary.lib), amelyet más programok is használhatnak.

    Megjegyzés:

    Amikor a Visual Studio parancssorára épít, két lépésben kell összeállítania a programot. Először futtassa cl /c /EHsc MathLibrary.cpp a kódot, és hozzon létre egy MathLibrary.obj nevű objektumfájlt. (A cl parancs meghívja a fordítót, Cl.exe, és a beállítás csatolás nélkül adja meg a /c fordítást. További információ: /c (Fordítás csatolás nélkül).) Másodszor futtassa lib MathLibrary.obj a kód csatolásához és a MathLibrary.lib statikus könyvtár létrehozásához. (A lib parancs meghívja a Könyvtárkezelőt, Lib.exe. További információ: LIB-referencia.)

A statikus kódtárra hivatkozó C++ konzolalkalmazás létrehozása

C++ konzolalkalmazás létrehozása, amely a Visual Studióban lévő statikus kódtárra hivatkozik

  1. A Megoldáskezelőben kattintson a jobb gombbal a felső csomópontra, a StaticMath megoldásra a helyi menü megnyitásához. AzÚj projekt>párbeszédpanel megnyitásához válassza az Új projekt hozzáadása lehetőséget.

  2. A párbeszédpanel tetején állítsa a Projekttípus szűrőt konzolra.

  3. A projekttípusok szűrt listájában válassza a Konzolalkalmazás lehetőséget, majd a Tovább gombot. A következő lapon írja be a MathClient nevet a Név mezőbe a projekt nevének megadásához.

  4. Válassza a Létrehozás gombot az ügyfélprojekt létrehozásához.

  5. Miután létrehoz egy konzolalkalmazást, egy üres program jön létre az ön számára. A forrásfájl neve megegyezik a korábban választott névvel. A példában a neve MathClient.cpp.

A Visual Studio 2017 statikus könyvtárára hivatkozó C++ konzolalkalmazás létrehozása

  1. A Megoldáskezelőben kattintson a jobb gombbal a felső csomópontra, a StaticMath megoldásra a helyi menü megnyitásához. AzÚj projekt hozzáadása párbeszédpanel megnyitásához válassza az >hozzáadása lehetőséget.

  2. Az Új projekt hozzáadása párbeszédpanelen válassza a Telepített>Visual C++>Windows Desktop lehetőséget. A középső panelen válassza a Windows Asztal varázslót.

  3. Adja meg a projekt nevét – például a MathClientet – a Név mezőben. Válassza az OK gombot.

  4. A Windows Asztali projekt párbeszédpanel Alkalmazás típusa területén válassza a Konzolalkalmazás (.exe) lehetőséget.

  5. A További beállítások csoportban törölje a jelölést az Előre összeállított fejléc jelölőnégyzetből, ha be van jelölve.

  6. Válassza az OK gombot a projekt létrehozásához.

  7. Miután létrehoz egy konzolalkalmazást, egy üres program jön létre az ön számára. A forrásfájl neve megegyezik a korábban választott névvel. A példában a neve MathClient.cpp.

A Visual Studio 2015 statikus kódtárára hivatkozó C++ konzolalkalmazás létrehozása

  1. A Megoldáskezelőben kattintson a jobb gombbal a felső csomópontra, a StaticMath megoldásra a helyi menü megnyitásához. AzÚj projekt hozzáadása párbeszédpanel megnyitásához válassza az >hozzáadása lehetőséget.

  2. Az Új projekt hozzáadása párbeszédpanelen válassza a Telepített>Visual C++>Win32 lehetőséget. A középső panelen válassza a Win32 Konzolalkalmazás lehetőséget.

  3. Adja meg a projekt nevét – például a MathClientet – a Név mezőben. Válassza az OK gombot.

  4. A Win32 alkalmazásvarázsló párbeszédpanelen válassza a Tovább gombot.

  5. Az Alkalmazásbeállítások lap Alkalmazástípus területén győződjön meg arról, hogy a konzolalkalmazás ki van jelölve. A További beállítások csoportban törölje az Előre összeállított fejléc jelölőnégyzet jelölését, majd jelölje be a Projekt ürítése jelölőnégyzetet. A projekt létrehozásához válassza a Befejezés lehetőséget.

  6. Ha forrásfájlt szeretne hozzáadni az üres projekthez, kattintson a jobb gombbal a MathClient-projekt helyi menüjének megnyitásához a Megoldáskezelőben, majd válassza az Új elem hozzáadása>parancsot.

  7. Az Új elem hozzáadása párbeszédpanelen válassza a Visual C++>Code elemet. A középső panelen válassza a C++ fájl (.cpp) lehetőséget. Adja meg a forrásfájl nevét (például MathClient.cpp), majd válassza a Hozzáadás gombot. Megjelenik egy üres forrásfájl.

Az alkalmazás statikus könyvtárának funkcióinak használata

A statikus kódtár funkcióinak használata az alkalmazásban

  1. A matematikai rutinok statikus kódtárban való használata előtt hivatkoznia kell rá. Nyissa meg a MathClient-projekt helyi menüjét a Megoldáskezelőben, majd válassza aHivatkozás>.

  2. A Hivatkozás hozzáadása párbeszédpanel felsorolja azokat a kódtárakat, amelyekre hivatkozhat. A Projektek lap az aktuális megoldás projektjeit és az általuk hivatkozott kódtárakat sorolja fel. Nyissa meg a Projektek lapot, jelölje be a Matematikailibrary jelölőnégyzetet, majd kattintson az OK gombra.

  3. A fejlécfájlra való hivatkozáshoz MathLibrary.h módosítania kell a beillesztett könyvtárak elérési útját. A Megoldáskezelőben kattintson a jobb gombbal a MathClientre az előugró menü megnyitásához. A Tulajdonságok elemet választva nyissa meg a MathClient Tulajdonságlapok párbeszédpanelt.

  4. A MathClient Tulajdonságlapokpárbeszédpanelen állítsa a Konfiguráció legördülő menüt minden konfigurációra. Állítsa a Platform legördülő menüt minden platformra.

  5. Válassza a Configuration Properties>C/C++>General tulajdonságlapot. A További belefoglalási könyvtárak tulajdonságban adja meg a MathLibrary könyvtár elérési útját, vagy keresse meg.

    A címtár elérési útjának megkeresése:

    1. Nyissa meg a További belefoglalás könyvtárak tulajdonság értékét tartalmazó legördülő listát, majd válassza a Szerkesztés lehetőséget.

    2. A További beillesztési könyvtárak párbeszédpanelen kattintson duplán a szövegdoboz felső részén. Ezután válassza a három pontot (...) a sor végén.

    3. A Könyvtár kiválasztása párbeszédpanelen lépjen fel egy szintre, majd válassza ki a MathLibrary könyvtárat. Ezután válassza a Mappa kijelölése gombot a kijelölés mentéséhez.

    4. A További tartalmazási könyvtárak párbeszédpanelen kattintson az OK gombra.

    5. A Tulajdonságlapok párbeszédpanelen kattintson az OK gombra a projekt módosításainak mentéséhez.

  6. Most már használhatja a Arithmetic osztályt ebben az alkalmazásban a #include "MathLibrary.h" fejléc kódba való beillesztésével. Cserélje le a MathClient.cpp tartalmát ezzel a kóddal:

    // MathClient.cpp
    // compile with: cl /EHsc MathClient.cpp /link MathLibrary.lib
    
    #include <iostream>
    #include "MathLibrary.h"
    
    int main()
    {
        double a = 7.4;
        int b = 99;
    
        std::cout << "a + b = " <<
            MathLibrary::Arithmetic::Add(a, b) << std::endl;
        std::cout << "a - b = " <<
            MathLibrary::Arithmetic::Subtract(a, b) << std::endl;
        std::cout << "a * b = " <<
            MathLibrary::Arithmetic::Multiply(a, b) << std::endl;
        std::cout << "a / b = " <<
            MathLibrary::Arithmetic::Divide(a, b) << std::endl;
    
        return 0;
    }
    
  7. A végrehajtható fájl létrehozásához válassza a Felépítés>Megoldás felépítése lehetőséget a menüsávon.

Az alkalmazás futtatása

Az alkalmazás futtatása

  1. Győződjön meg arról, hogy a MathClient van kiválasztva alapértelmezett projektként. A kijelöléshez kattintson a jobb gombbal a MathClient helyi menüjének megnyitásához a Megoldáskezelőben, majd válassza a Beállítás kezdőprojektként lehetőséget.

  2. A projekt futtatásához a menüsávon válassza a Hibakeresés>Futtatás hibakeresés nélkül. A kimenetnek a következőhöz kell hasonlítania:

    a + b = 106.4
    a - b = -91.6
    a * b = 732.6
    a / b = 0.0747475
    

Lásd még

Útmutató: Dinamikus csatolású kódtár létrehozása és használata (C++)