template



  • hallo ^^
    ich will eine template-funktion schreiben, die in etwa so aufgebaut ist:

    #include <iterator>
    #include <vector>
    
    template <class T>
    	void foo (T &ergebnis, const T::iterator &start)
    

    also es wird ein Container übergeben (z.bsp. vector oder deque) und ein zugehöriger iterator.

    Nun will mein VS das aber nicht so richtig machen : <
    Ich will aber nicht jedes mal 7 template-Argumente mit angeben müssen - oder geht das nicht anders?

    Die Fehlermeldung dazu:

    warning C4346: 'std::vector<T>::iterator': Abhängiger Name ist kein Typ
    	Präfix mit 'typename' zum Angeben eines Typs
    error C2061: Syntaxfehler: Bezeichner 'iterator'
    

    Danke schon mal : >



  • unskilled schrieb:

    Präfix mit 'typename' zum Angeben eines Typs
    

    Ansonsten liegt dein Fehler nebenbei auch mehr oder weniuger außerhalb des Codeabschnitts, den du gepostet hast



  • Ahhh - sry - hatte das typename überall probiert - nur halt nicht vor dem const xD danke 😑



  • unskilled schrieb:

    Ahhh - sry - hatte das typename überall probiert - nur halt nicht vor dem const xD danke 😑

    Wieder mal ein Grund, warum ich postfix-const bevorzuge. 😃

    Gruß,

    Simon2.


Anmelden zum Antworten