folgendes durch typedef ersetzen



  • #define it(x) std::list<x>::const_iterator
    

    ok, ich habs so versucht

    template<typename t> typedef std::list<t>::const_iterator it;
    

    kompiliert fehlerlos. bei solcher benutzung

    it<int> i;
    

    gibts aber ein paar fehler. vermutlich hab ich das define falsch übersetzt. wie mach ichs richtig?



  • leider funktionier das nicht. template typedefs gibt es (noch) nicht.



  • davie schrieb:

    template typedefs gibt es (noch) nicht.

    Bis es endlich soweit ist, kann man als Annäherung sowas verwenden:

    template <class T>
    struct It
    {
         typedef typename std::list<T>::const_iterator type;
    };
    
    // Anwendung
    It<int>::type it = ...
    

    Das ist nicht schön, aber vielleicht doch ein Anfang.


Anmelden zum Antworten