Template - Liste - Rückgabeproblem
-
Hallo,
sitze hier vor einem für mich großem problem .... und zwar folgendes ...
habe ein klasse linkedlist ...
template <class T>
class LinkedList : public List<T> {private:
struct Element {
T value;
Element *next;
};
Element *head;
//Element *ptr;public:
/****************************************************
***** CONSTRUCTORS *****
****************************************************/
// default constructor
LinkedList();
..... usw.LinkedList.cpp
//define which Template Types are permitted
template LinkedList<int>;......
// get element at given index
// index out of bounds ==> return null pointer
// element at index available ==> return pointer on element
template <class T>
T* LinkedList<T>::elementAt(int index) {
Element * help = head;
for (int i=0; i<index; i++) {
if (help->next != NULL) {
help=help->next;
}
}
T* x = help->next; //**** Problem!!
return x; //**** Problem!!
//return ?????
}wie kann ich // element at index available ==> return pointer on element
lösen??über hilfe wäre ich sehr dankbar ...
thx
snoopy
-
template <class T> T* elementAt(unsigned int at) { int index=1; Element* ptr=head; while(index<at) { ptr = head->next; } return &(ptr->value); }
Aber keine Garantie
-
Es muss natürlich ptr = ptr->next heißen