Hallo,
Ich würde gerne von einer Funktion einen vector (container aus der std) zurück bekommen.
Wenn ich das so in einer Datei schreibe funktioniert es auch:
(Zwischenfrage: Ist das "sauber" so? Dass ich in der Funktion einen vector erstelle und mit return ausgebe ? normal muss man hier doch mit zeigern oder dem new konstruktor arbeiten oder ist vector<int> sowieso schon ein zeiger )
Wenn ich nun aber die funktion in eine andere Datei schreibe, und den Funktionskopf in eine Header Datei aufnehme stört es sich immer an der Zeile
vector<int> matrix_instanz(int anzahl) ;
in der header Datei ("expected constructor , destructor or type conversion before < token" "expected , or ; before < token"...)
Was hab ich falsch gemacht ?
Ich würde gerne von einer Funktion einen vector (container aus der std) zurück bekommen.
Wenn ich das so in einer Datei schreibe funktioniert es auch:
C++:
#include <cstdlib>
#include <iostream>
#include "funktionen.h"
#include <vector>
using namespace std;
vector<int> funktion(int anzahl)
{
vector<int> matrix;
for (int i=1; i < anzahl ; i++) matrix1.push_back(i);
return matrix;
}
int main(int argc, char *argv[])
{
vector<int> matrix;
matrix=funktion(10);
for (int i=0;i<10;i++)cout<<matrix[i]; // Ausgabe 1234....
system("PAUSE");
return EXIT_SUCCESS;
}
(Zwischenfrage: Ist das "sauber" so? Dass ich in der Funktion einen vector erstelle und mit return ausgebe ? normal muss man hier doch mit zeigern oder dem new konstruktor arbeiten oder ist vector<int> sowieso schon ein zeiger )
Wenn ich nun aber die funktion in eine andere Datei schreibe, und den Funktionskopf in eine Header Datei aufnehme stört es sich immer an der Zeile
vector<int> matrix_instanz(int anzahl) ;
in der header Datei ("expected constructor , destructor or type conversion before < token" "expected , or ; before < token"...)
Was hab ich falsch gemacht ?
Zuletzt bearbeitet: