İzlenecek yol: Statik kitaplık oluşturma ve kullanma

Bu adım adım izlenecek yol, C++ uygulamalarıyla kullanmak üzere statik kitaplığın (.lib dosyası) nasıl oluşturulacağını gösterir. Statik kitaplık kullanmak, kodu yeniden kullanmanın harika bir yoludur. İşlevsellik gerektiren her uygulamada aynı yordamları yeniden oluşturmak yerine, bunları statik bir kitaplığa bir kez yazın ve uygulamalardan başvuruda bulunın. Statik kitaplıktan bağlanan kod uygulamanızın bir parçası olur. Kodu kullanmak için başka bir dosya yüklemeniz gerekmez.

Bu izlenecek yol şu görevleri kapsar:

Önkoşullar

C++ dilinin temellerini anlama.

Statik kitaplık projesi oluşturma

Projeyi oluşturma yönergeleri, Visual Studio sürümünüze bağlı olarak değişir. Tercih ettiğiniz Visual Studio sürümünün belgelerini görmek için Sürüm seçici denetimini kullanın. Bu sayfadaki içindekiler tablosunun en üstünde bulunur.

Visual Studio’da bir statik kitaplık projesi oluşturmak için:

  1. Menü çubuğunda Dosya>Yeni>Project'yi seçerek Yeni project oluştur iletişim kutusunu açın.

  2. İletişim kutusunun üst kısmında Dil'i C++ olarak, Platform'ı Windows olarak ve Proje türünü Kitaplık olarak ayarlayın.

  3. Filtrelenen proje türleri listesinden Windows Desktop Wizard'ı seçin ve ardından Next'i seçin.

  4. Yeni projenizi yapılandırın sayfasında Proje adı kutusuna MathLibrarygirerek proje için bir ad belirtin. Çözüm adı kutusuna StaticMath yazın. Oluştur düğmesini seçerek Windows Masaüstü Projesi iletişim kutusunu açın.

  5. Windows Masaüstü Projesi iletişim kutusundaki Uygulama türü'nin altında Statik Kitaplık (.lib) öğesini seçin.

  6. Ek seçenekler'in altında, seçiliyse Önceden derlenmiş üst bilgi onay kutusunu temizleyin. Projeyi boşalt'ı seçin.

  7. Projeyi oluşturmak için Tamam'ı seçin.

Visual Studio 2017'de statik kitaplık projesi oluşturmak için:

  1. Menü çubuğunda Dosya Yeni Proje'yi> seçin.>

  2. Yeni Project iletişim kutusunda Yüklü>Visual C++>Windows Desktop'ı seçin. Orta bölmede Windows Masaüstü Sihirbazı'nı seçin.

  3. Ad kutusunda proje için MathLibrary gibi bir ad belirtin. Çözüm Adı kutusunda çözüm için StaticMath gibi bir ad belirtin. Tamam'ı seçin.

  4. Windows Masaüstü Projesi iletişim kutusundaki Uygulama türü'nin altında Statik Kitaplık (.lib) öğesini seçin.

  5. Ek Seçenekler'in altında, seçiliyse Önceden derlenmiş üst bilgi onay kutusunu temizleyin. Projeyi boşalt'ı seçin.

  6. Projeyi oluşturmak için Tamam'ı seçin.

Visual Studio 2015'te statik kitaplık projesi oluşturmak için:

  1. Menü çubuğunda Dosya Yeni Proje'yi> seçin.>

  2. Yeni Project iletişim kutusunda Yüklü>Şablonlar>Visual C++>Win32'yi seçin. Orta bölmede Win32 Konsol Uygulaması'nı seçin.

  3. Ad kutusunda proje için MathLibrary gibi bir ad belirtin. Çözüm Adı kutusunda çözüm için StaticMath gibi bir ad belirtin. Tamam'ı seçin.

  4. Win32 Uygulama Sihirbazı'nda İleri'yi seçin.

  5. Uygulama Ayarları sayfasında, Uygulama türü'nin altında Statik kitaplık'ı seçin. Ek seçenekler altında, Önceden derlenmiş üstbilgi onay kutusunun işaretini kaldırın. Projeyi oluşturmak için Son'u seçin.

Statik kitaplığa sınıf ekleme

Statik kitaplığa sınıf eklemek için:

  1. Yeni bir sınıf için üst bilgi dosyası oluşturun. Çözüm Gezgini'daMathLibrary'ye sağ tıklayarak projenin bağlam menüsünü açın. Ekle>Yeni Öğe seçin.

  2. Yeni Öğe Ekle iletişim kutusunda Visual C++>Code'ı seçin. Orta bölmede Üst Bilgi Dosyası (.h) öğesini seçin. Üst bilgi dosyası için MathLibrary.h gibi bir ad belirtin ve ekle'yi seçin. Neredeyse boş bir üst bilgi dosyası görüntülenir.

  3. Toplama, çıkarma, çarpma ve bölme gibi yaygın matematik işlemlerini yapmak için adlı Arithmetic sınıf için bir bildirim ekleyin. Kod şuna benzemelidir:

    // 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. Yeni sınıf için bir kaynak dosyası oluşturmak için, Çözüm Gezgini'da MathLibrary projesinin bağlam menüsünü açın ve ardından Yeni Öğe Ekle'yi> seçin.

  5. Yeni Öğe Ekle iletişim kutusundaki orta bölmede C++ Dosyası (.cpp) öğesini seçin. Kaynak dosya için MathLibrary.cpp gibi bir ad belirtin. Ardından Ekle'yi seçin. Boş bir kaynak dosyası görüntülenir.

  6. sınıfının Arithmeticişlevselliğini uygulamak için bu kaynak dosyasını kullanın. Kod şuna benzemelidir:

    // 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. Statik kitaplığı oluşturmak için menü çubuğunda Derle>Derleme Çözümü seçeneklerini seçin. Derleme, diğer programların kullanabileceği mathlibrary.lib adlı statik bir kitaplık oluşturur.

    Not

    Visual Studio komut satırında derleme yaparken, programı iki adımda oluşturmanız gerekir.

    1. Komutunu çalıştırarak cl /c /EHsc MathLibrary.cpp kodu derleyin ve MathLibrary.obj adlı bir nesne dosyası oluşturun. cl komutu derleyiciyi Cl.exeçağırır ve /c seçeneği bağlamadan derlemeyi belirtir. Daha fazla bilgi için bkz. /c (Bağlama olmadan derleme).
    2. Komutunu çalıştırarak lib MathLibrary.obj kodu bağlayın ve MathLibrary.lib statik kitaplığını oluşturun. lib komutu Kitaplık Yöneticisi'ni Lib.exeçağırır. Daha fazla bilgi için bkz. LIB Başvurusu.

Statik kitaplığa başvuran bir C++ konsol uygulaması oluşturma

Visual Studio statik kitaplığına başvuran bir C++ konsol uygulaması oluşturmak için:

  1. Çözüm Gezgini'da üst düğüm olan 'StaticMath' Çözümü'ne sağ tıklayarak bağlam menüsünü açın. Yeni Proje Ekle'yi>seçerek Yeni Proje Ekle iletişim kutusunu açın.

  2. İletişim kutusunun üst kısmında Proje türü filtresini Konsol olarak ayarlayın.

  3. Filtrelenen proje türleri listesinden Konsol Uygulaması'nı ve ardından İleri'yi seçin. Sonraki sayfada projenin adı olarak MathClient girin.

  4. İstemci projesini oluşturmak için Oluştur'u seçin.

    Bir konsol uygulaması oluşturduktan sonra sizin için boş bir program oluşturulur. Kaynak dosyanın adı, daha önce seçtiğiniz adla aynıdır. Örnekte adı MathClient.cppverilmiştir.

Visual Studio 2017'de statik kitaplığa başvuran bir C++ konsol uygulaması oluşturmak için:

  1. Çözüm Gezgini'da üst düğüm olan 'StaticMath' Çözümü'ne sağ tıklayarak bağlam menüsünü açın. Yeni Proje Ekle'yi>seçerek Yeni Proje Ekle iletişim kutusunu açın.

  2. Yeni Project Ekle iletişim kutusunda Yüklü>Visual C++>Windows Desktop'ı seçin. Orta bölmede Windows Masaüstü Sihirbazı'nı seçin.

  3. Ad kutusunda proje için bir ad (örneğin, MathClient) belirtin. Tamam düğmesini seçin.

  4. Windows Masaüstü Projesi iletişim kutusundaki Uygulama türü'nin altında Konsol Uygulaması (.exe) öğesini seçin.

  5. Ek Seçenekler'in altında, seçiliyse Önceden derlenmiş üst bilgi onay kutusunu temizleyin.

  6. Projeyi oluşturmak için Tamam'ı seçin.

  7. Bir konsol uygulaması oluşturduktan sonra sizin için boş bir program oluşturulur. Kaynak dosyanın adı, daha önce seçtiğiniz adla aynıdır. Örnekte adı MathClient.cppverilmiştir.

Visual Studio 2015'te statik kitaplığa başvuran bir C++ konsol uygulaması oluşturmak için:

  1. Çözüm Gezgini'da üst düğüm olan 'StaticMath' Çözümü'ne sağ tıklayarak bağlam menüsünü açın. Yeni Proje Ekle'yi>seçerek Yeni Proje Ekle iletişim kutusunu açın.

  2. Yeni Project Ekle iletişim kutusunda Yüklü>Visual C++>Win32'yi seçin. Orta bölmede Win32 Konsol Uygulaması'nı seçin.

  3. Ad kutusunda proje için bir ad (örneğin, MathClient) belirtin. Tamam düğmesini seçin.

  4. Win32 Uygulama Sihirbazı iletişim kutusunda İleri'yi seçin.

  5. Uygulama Ayarları sayfasındaki Uygulama türü'nin altında Konsol uygulamasının seçili olduğundan emin olun. Ek Seçenekler altında, Önceden derlenmiş üstbilgi seçeneğinin işaretini kaldırın ve ardından Boş Proje'yi seçin. Projeyi oluşturmak için Son'u seçin.

  6. Boş projeye kaynak dosya eklemek için sağ tıklayarak MathClient projesinin bağlam menüsünü Çözüm Gezgini açın veardından Yeni Öğe Ekle'yi> seçin.

  7. Yeni Öğe Ekle iletişim kutusunda Visual C++>Code'ı seçin. Orta bölmede C++ Dosyası (.cpp) öğesini seçin. Kaynak dosya için bir ad (örneğin, MathClient.cpp) belirtin ve ekle düğmesini seçin. Boş bir kaynak dosyası görüntülenir.

Uygulamadaki statik kitaplıktaki işlevselliği kullanma

Uygulamadaki statik kitaplıktaki işlevselliği kullanmak için:

  1. matematik yordamlarını kullanmadan önce statik kitaplığa başvurun. mathclient projesinin bağlam menüsünü Çözüm Gezgini açın ve ardındanBaşvuruEkle'yi> seçin.

  2. Başvuru Ekle iletişim kutusunda başvurabileceğiniz kitaplıklar listelenir. Projeler sekmesi geçerli çözümdeki projeleri ve başvurdıkları kitaplıkları listeler. Projeler sekmesini açın, MathLibrary'yi ve ardından Tamam'ı seçin.

  3. MathLibrary.h başlık dosyasına başvuracak şekilde eklenen dizinlerin yolunu değiştirin. Çözüm Gezgini'daMathClient'a sağ tıklayarak bağlam menüsünü açın. MathClient Özellik Sayfaları iletişim kutusunu açmak için Özellikler'i seçin.

  4. MathClient Özellik Sayfaları iletişim kutusunda Yapılandırma değerini Tüm Yapılandırmalar olarak ayarlayın. PlatformuTüm Platformlar olarak ayarlayın.

  5. Yapılandırma Özellikleri>C/C++>Genel özellik sayfasını seçin. Ek Ekleme Dizinleri özelliğinde MathLibrary dizininin yolunu belirtin veya dizine göz atın.

    Dizin yoluna göz atmak için:

    1. Ek Ekleme Dizinleri özellik değerinin açılır listesini açın ve Düzenle'yi seçin.

    2. Ek Dizinleri Ekle iletişim kutusunda, metin kutusunun üst kısmına çift tıklayın. Ardından satırın sonundaki üç nokta düğmesini (...) seçin.

    3. Dizin Seç iletişim kutusunda bir düzey yukarı gidin ve MathLibrary dizinini seçin. Ardından seçiminizi kaydetmek için Klasör Seç düğmesini seçin.

    4. Ek Dizinleri Ekle iletişim kutusunda Tamam düğmesini seçin.

    5. Projedeki değişikliklerinizi kaydetmek için Özellik Sayfaları iletişim kutusunda Tamam düğmesini seçin.

  6. Kodunuza Arithmetic başlık dosyasını ekleyerek artık bu uygulamada #include "MathLibrary.h" sınıfını kullanabilirsiniz. öğesinin içeriğini MathClient.cpp şu kodla değiştirin:

    // 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. Yürütülebilir dosyayı oluşturmak için, menü çubuğunda Build ve > seçeneklerini seçin.

Uygulamayı çalıştırma

Uygulamayı çalıştırmak için:

  1. MathClient'ın varsayılan proje olarak seçildiğinden emin olun. Seçmek için, bağlam menüsünü açmak için Çözüm Gezgini'da MathClient'a sağ tıklayın ve ardından Başlangıç Project Olarak Ayarla'yı seçin.

  2. Projeyi çalıştırmak için, menü çubuğunda Hata Ayıklama>Hata Ayıklamadan Başlat seçeneğini belirleyin. Çıkış şuna benzemelidir:

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

Ayrıca bkz.

İzlenecek yol: Dinamik Bağlantı Kitaplığı Oluşturma ve Kullanma (C++)