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 ú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
A menüsávOn válassza azÚj>projekt> lehetőséget az Új projekt 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 a Windows Asztali varázslót, majd 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.
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.
Válassza az OK gombot a projekt létrehozásához.
Statikus kódtá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 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.
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.
A Windows Asztali projekt párbeszédpanel Alkalmazástípus területén válassza a Statikus tár (.lib) lehetőséget.
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.
Válassza az OK gombot a projekt létrehozásához.
Statikus kódtárprojekt létrehozása a Visual Studio 2015-ben
A menüsávon válassza a Fájl>Új>Projekt lehetőséget.
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.
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.
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 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
Ú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.
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.
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); }; }
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.
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.
Ezzel a forrásfájllal implementálhatja az osztály
Arithmetic
funkció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ó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. (Acl
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 futtassalib MathLibrary.obj
a kód csatolásához és a MathLibrary.lib statikus könyvtár létrehozásához. (Alib
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
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.
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 írja be a MathClient nevet a Név mezőbe a projekt nevének megadásához.
Válassza a Létrehozás gombot 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
.
A Visual Studio 2017 statikus könyvtárára hivatkozó C++ konzolalkalmazás létrehozása
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.
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.
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.
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.
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
.
A Visual Studio 2015 statikus kódtárára hivatkozó C++ konzolalkalmazás létrehozása
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.
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.
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 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.
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.
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 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>.
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.
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.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.
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 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.
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 tartalmazá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
Arithmetic
osztályt ebben az alkalmazásban a#include "MathLibrary.h"
fejléc kódba való beillesztésével. Cserélje le aMathClient.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; }
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 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.
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++)