fork download
  1. #include <iostream>
  2.  
  3.  
  4. using namespace std;
  5.  
  6. template <typename Type>
  7. struct LinkedElement {
  8. Type content;
  9. LinkedElement<Type> *next = NULL;
  10. };
  11.  
  12. /*
  13.  *Tive que improvisar a função pois o código não está disponível na pergunta.
  14.  */
  15. template <typename Type>
  16. LinkedElement<Type> *createLinkedElement(Type e){
  17. LinkedElement<Type> *result = new LinkedElement<Type>(); //Aqui o operador new cria uma nova estrutura LinkedElement alocada no heap.
  18. result->content = e;
  19. return result;
  20. }
  21.  
  22. LinkedElement<int> *firstElement;
  23.  
  24. void novoInt(int e){
  25. LinkedElement<int> *newElement = createLinkedElement(e);
  26. if (firstElement == NULL) {
  27. firstElement = newElement;
  28. } else {
  29. LinkedElement<int> *lastElement = firstElement;
  30.  
  31. while (lastElement->next != NULL) {
  32. lastElement = lastElement->next;
  33. }
  34. lastElement->next = newElement;
  35. }
  36. }
  37.  
  38. int main(){
  39. novoInt(10);
  40. novoInt(20);
  41. novoInt(30);
  42. novoInt(40);
  43. novoInt(50);
  44. LinkedElement<int> *current = firstElement;
  45. do{
  46. cout << current->content << '\n';
  47. current = current->next;
  48. } while(current != NULL);
  49.  
  50. }
Success #stdin #stdout 0.01s 5436KB
stdin
Standard input is empty
stdout
10
20
30
40
50