Witam. Wiem ,że było poruszanych wiele tematów dotyczących tego błędu, ale mimo poszukiwań nie mogłem nigdzie znaleźć rozwiązania problemu. Podczas kompilacji tego krótkiego kodu kompilator zgłasza taki błąd.
Build: Release in autolist (compiler: GNU GCC Compiler)
error: ld returned 1 exit status|
Build failed: 1 error(s), 0 warning(s) (0 minute(s), 0 second(s))
Odinstalowywałem antywirusa, przeinstalowywałem środowisko CodeBlocks oraz zmieniałem ścieżkę folderu z projektem.
main.cpp
#include "autolist.h"
int main()
{
return 0;//<-- main powinna zwracac 0
}
autolist.h
#include <iostream>
#ifndef AUTOLIST_H_INCLUDED
#define AUTOLIST_H_INCLUDED
int max_lvl = 5;
int max_size = 10000;
template <class T>
class Node{
typedef Node<T>* N;
private:
T key;
Node** next;
int lvl;
bool if_guard;
public:
Node();// guardian
Node(T& n_key); // other
private:
int set_lvl();
};
template <class T>
class AutoList{
typedef Node<T>* N;
private:
N guard;
N bot;
N crnt;
int node_nmbr;
public:
AutoList();
void insrt_in(T& n_key);
T rtrn_key(int& index);
int srch(T& n_key);
private:
bool if_max();
N find_node(N node,N prev,T& n_key,int& lvl);
void set_ally (N node);
};
#endif // AUTOLIST_H_INCLUDED
autolist.cpp (tylko jedna linijka)
#include "autolist.h"
Jednak , gdy usunę tą linijkę lub wstawię ją jako komentarz , to kod kompiluje się bez problemu. Usuwałem deklarację klasy jako szablonu, dalej to samo.
np, tak działa
// #include "autolist.h"
W czym rzecz ? Męczę się już drugi dzień i bardzo proszę o pomoc. Wielkie dzięki z góry