C saklamak için bir işlev şablonu tanımlar .CPP dosyası | Netgez.com
SORU
22 EYLÃœL 2008, PAZARTESÄ°


C saklamak için bir işlev şablonu tanımlar .CPP dosyası

CPP dosyası içinde muhafaza yerine başlık içi tercih ederim bazı şablon kodu var. Bu tür kullanılacak bildiğin sürece yapılabilir biliyorum. Örneğin:

.h dosyası

class foo
{
public:
    template <typename T>
    void do(const T& t);
};

.cpp dosyası

template <typename T>
void foo::do(const T& t)
{
    // Do something with t
}

template void foo::do<int>(const int&);
template void foo::do<std::string>(const std::string&);

Son iki satırı - foo not::şablon işlevi yalnızca in ve std ile kullanılır: "bu tanımları uygulaması bağlayacak yani dizeler.

Benim sorum - kötü bu hack mi yoksa diğer derleyicileri ile çalışır/bağlayıcı? Şu an sadece VS2008 ile bu kodu kullanıyorum ama diğer ortamlar için port konuşmak istiyor.

CEVAP
22 EYLÃœL 2008, PAZARTESÄ°


Bahsettiğiniz sorun başlığındaki şablon tanımlanarak çözülebilir, ya da yaklaşımı ile yukarıda tarif. Okuma puan 35.12, 35.13, 35.14 C FAQ Lite: tavsiye ederim

https://isocpp.org/wiki/faq/templates

Şablon bu konular hakkında ayrıntılı bir sürü gitmek.

Bunu PaylaÅŸ:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VÄ°DEO

Rastgele Yazarlar

  • Brendan van Son

    Brendan van

    5 Aralık 2006
  • Electro Posé

    Electro PosÃ

    21 ÅžUBAT 2013
  • Ricardo Cerqueira

    Ricardo Cerq

    28 Mayıs 2008