Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
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 ugyanazokat a rutinokat egyesítenél minden olyan alkalmazásban, amely megköveteli a funkcionalitást, írd meg őket egyszer egy statikus tárban, majd hivatkozz rá az alkalmazásokból. 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 Visual Studio:
A menüsávOn válassza azÚj>fájl>Project lehetőséget az Új project létrehozása párbeszédpanel megnyitásához.
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.
A projekttípusok szűrt listájában válassza Windows Asztal varázslót, majd válassza a Tovább gombot.
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.
A Windows Asztali projekt párbeszédpanel Alkalmazástípus területén válassza a Statikus tár (.lib) lehetőséget.
Ha be van jelölve, törölje az Előre összeállított fejléc jelölőnégyzet jelölését a További beállítások csoportban. Válassza az Üres projekt lehetőséget.
Válassza az OK gombot a projekt létrehozásához.
Statikus függvénytárprojekt létrehozása a Visual Studio 2017-ben:
A menüsávon válassza a Fájl>Új>Projekt lehetőséget.
Az Új Project 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.
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. Kattintson az OK gombra.
A Windows Asztali projekt párbeszédpanel Alkalmazástípus területén válassza a Statikus tár (.lib) lehetőséget.
Ha be van jelölve, törölje az Előre összeállított fejléc jelölőnégyzet jelölését a További beállítások csoportban. Válassza az Üres projekt lehetőséget.
Válassza az OK gombot a projekt létrehozásához.
Statikus függvénytárprojekt létrehozásához a Visual Studio 2015-ben:
A menüsávon válassza a Fájl>Új>Projekt lehetőséget.
Az Új Project 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.
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. Kattintson az OK gombra.
A Win32 alkalmazásvarázslóban válassza a Tovább gombot.
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 az Előre összeállított fejléc jelölőnégyzet jelölését . 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 kódtárhoz:
Hozzon létre egy fejlécfájlt egy új osztályhoz. A Megoldáskezelő kattintson a jobb gombbal a MathLibrary elemre a projekt helyi menüjének megnyitásához. Válassza azÚj elem> lehetőséget.
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 lehetőséget. Megjelenik egy majdnem üres fejlécfájl.
Adjon hozzá egy deklarációt egy olyan osztályhoz, amely
Arithmeticolyan á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); }; }Ha forrásfájlt szeretne létrehozni az új osztályhoz, nyissa meg a MathLibrary projekt helyi menüjét a Megoldáskezelő, majd válassza azÚj elemhozzáadása> lehetőséget.
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. Ezután válassza a Hozzáadás lehetőséget. Megjelenik egy üres forrásfájl.
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; } }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önyvtárat, a MathLibrary.lib-ot, 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.
- A kód lefordításához és a MathLibrary.obj nevű objektumfájl létrehozásához futtassa a
cl /c /EHsc MathLibrary.cppparancsot. Aclparancs meghívja a fordítót, a Cl.exe-t, a/ckapcsoló pedig a szerkesztés nélküli fordítást adja meg. További információ: /c (Fordítás csatolás nélkül). - Futtassa
lib MathLibrary.obja kód csatolásához és a MathLibrary.lib statikus könyvtár létrehozásához. Alibparancs meghívja a Könyvtárkezelőt, Lib.exe. További információ: LIB-referencia.
- A kód lefordításához és a MathLibrary.obj nevű objektumfájl létrehozásához futtassa a
A statikus kódtárra hivatkozó C++ konzolalkalmazás létrehozása
Olyan C++ konzolalkalmazás létrehozása, amely a Visual Studio statikus kódtárára hivatkozik:
A helyi menü megnyitásához Megoldáskezelő kattintson a jobb gombbal a felső csomópontra, a StaticMath megoldásra. AzÚj projekt>párbeszédpanel megnyitásához válassza az Új projekt hozzáadása lehetőséget.
A párbeszédpanel tetején állítsa a Projekttípus szűrőt konzolra.
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 adja meg a MathClient nevet a projektnek.
Válassza a Létrehozás lehetőséget az ügyfélprojekt létrehozásához.
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.
Olyan C++ konzolalkalmazás létrehozása, amely a 2017-Visual Studio statikus kódtárra hivatkozik:
A helyi menü megnyitásához Megoldáskezelő kattintson a jobb gombbal a felső csomópontra, a StaticMath megoldásra. AzÚj projekt>párbeszédpanel megnyitásához válassza az Új projekt hozzáadása lehetőséget.
Az Új Project hozzáadása párbeszédpanelen válassza a Telepített>Visual C++>Windows Asztal lehetőséget. A középső panelen válassza a Windows Asztal varázslót.
Adja meg a projekt nevét – például a MathClientet – a Név mezőben. Válassza az OK gombot.
A Windows Asztali projekt párbeszédpanel Alkalmazás típusa területén válassza a Konzolalkalmazás (.exe) lehetőséget.
Ha be van jelölve, törölje az Előre összeállított fejléc jelölőnégyzet jelölését a További beállítások csoportban.
Válassza az OK gombot a projekt létrehozásához.
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.
Olyan C++ konzolalkalmazás létrehozása, amely a 2015-ös Visual Studio statikus kódtárra hivatkozik:
A helyi menü megnyitásához Megoldáskezelő kattintson a jobb gombbal a felső csomópontra, a StaticMath megoldásra. AzÚj projekt>párbeszédpanel megnyitásához válassza az Új projekt hozzáadása lehetőséget.
Az Új Project hozzáadása párbeszédpanelen válassza a Telepített>Vizualizáció C++>Win32 lehetőséget. A középső panelen válassza a Win32 Konzolalkalmazás lehetőséget.
Adja meg a projekt nevét – például a MathClientet – a Név mezőben. Válassza az OK gombot.
A Win32 alkalmazásvarázsló párbeszédpanelen válassza a Tovább gombot.
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 területen törölje az Előre összeállított fejléc jelölését, majd válassza az Üres Project lehetőséget. A projekt létrehozásához válassza a Befejezés lehetőséget.
Ha forrásfájlt szeretne hozzáadni az üres projekthez, kattintson a jobb gombbal a MathClient-projekt helyi menüjének megnyitásához Megoldáskezelő, majd válassza az Új elem hozzáadása>parancsot.
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:
A matematikai rutinok használata előtt hivatkozzon a statikus kódtárra. Nyissa meg a MathClient-projekt helyi menüjét a Megoldáskezelő, majd válassza aHivatkozáshozzáadása lehetőséget>.
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, válassza a MathLibrary, majd az OK gombot.
Módosítsa a belefoglalt könyvtárak elérési útját a
MathLibrary.hfejlécfájlra való hivatkozáshoz. A Megoldáskezelő ablakban kattintson a jobb gombbal a MathClient elemre a helyi menü megnyitásához. A Tulajdonságok elemet választva nyissa meg a MathClient Tulajdonságlapok párbeszédpanelt .A MathClient Tulajdonságlapok párbeszédpanelen állítsa be a Konfiguráció értékét minden konfigurációra. Állítsa a platformotminden platformra.
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:
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.
A(z) További belefoglalási könyvtárak párbeszédpanelen kattintson duplán a szövegmező felső részébe. Ezután válassza a három pontot (...) a sor végén.
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.
A További belefoglalási könyvtárak párbeszédpanelen kattintson az OK gombra.
A Tulajdonságlapok párbeszédpanelen kattintson az OK gombra a projekt módosításainak mentéséhez.
Most már használhatja a
Arithmeticosztályt ebben az alkalmazásban a#include "MathLibrary.h"fejléc kódba való beillesztésével. Cserélje le aMathClient.cpptartalmá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; }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:
Győződjön meg arról, hogy a MathClient van kiválasztva alapértelmezett projektként. A kiválasztásához kattintson a jobb gombbal a Megoldáskezelő ablakban a MathClient elemre a helyi menü megnyitásához, majd válassza a Beállítás indítási projektként lehetőséget.
A menüsávon válassza a Hibakeresés>Indítás hibakeresés nélkül lehetőséget a projekt futtatásához. 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++)