Это кажется простым, но каким-то образом компиляция отправляет это сообщение об ошибке, которое я не могу понять, поэтому исправьте мой код.
Это упрощенная версия того, что я сделал, просто для вас может появиться ошибка:
main.cpp
include "myfunction.h"
int main(){
std::vector<int> myVet = {1,4,3};
sequence(1,2,1,myVet);
}
myfunction.h
#include <vector>
/*funtion creates a sequence*/
void sequence(int start, int end,
int step, std::vector<int> skip);
myfunction.cpp
#include "myfunction.h"
void sequence(int start, int end,
int step, std::vector<int> skip){
auto x = 0;
};
Это дает мне сообщение об ошибке, которое говорит
In function 'main':
/home/machina/Documents/Grafos&Redes/Implementação/main.cpp:18: undefined reference to 'sequence(int, int, int, std::vector <int, std::allocator<int> >)'
collect2: error: ld returned 1 exit status
Не могли бы вы объяснить, почему это появляется?
Это следующая команда, которую я использовал для компиляции
g++ -std=c++11 -g -Wall -Wextra -Werror main.cpp -o main.out