Eddie1985
13-06-2011, 18:59
salve
dunque ho messo nella stessa cartella i seguenti 3 files: prova1.cpp , cc.h e es1.s . I primi due file sono così fatti:
// prova1.cpp
#include "cc.h"
int main()
{ st s = { 1,2,3,4, 1.0,2.0,3.0,4.0 };
int v[4] = {10,11,12,13 };
double d = 2.5;
cl cc1(v); cc1.stampa();
cc1.elab1(s, d); cc1.stampa();
cout << d << endl;
}
#include <iostream>
using namespace std;
struct st { int vv1[4]; double vv2[4]; };
class cl
{ int a, b; st s;
public:
cl(); cl(int v[]);
void elab1(st ss, double& d);
cl elab2(cl cc);
void stampa()
{ int i; cout << a << ' ' << b << endl;
for (i=0;i<4;i++) cout << s.vv1[i] << ' '; cout << '\t';
for (i=0;i<4;i++) cout << s.vv2[i] << ' '; cout << endl;
cout << endl;
}
};
Il file es1.s è in Assembly e non lo sto a riportare in quanto non è quello la causa del problema (almeno penso :P ).
Premesso questo quando do il comando:
gxx -o es1 -fno-elide-constructors es1.s prova1.cpp
mi da il seguente errore:
In function `main':
prova1.cpp:(.text+0xae): undefined reference to `cl::cl(int*)'
prova1.cpp:(.text+0x14f): undefined reference to `cl::elab1(st, double&)'
collect2: ld returned 1 exit status
Qualcuno sa dirmi come posso risolvere? Grazie
dunque ho messo nella stessa cartella i seguenti 3 files: prova1.cpp , cc.h e es1.s . I primi due file sono così fatti:
// prova1.cpp
#include "cc.h"
int main()
{ st s = { 1,2,3,4, 1.0,2.0,3.0,4.0 };
int v[4] = {10,11,12,13 };
double d = 2.5;
cl cc1(v); cc1.stampa();
cc1.elab1(s, d); cc1.stampa();
cout << d << endl;
}
#include <iostream>
using namespace std;
struct st { int vv1[4]; double vv2[4]; };
class cl
{ int a, b; st s;
public:
cl(); cl(int v[]);
void elab1(st ss, double& d);
cl elab2(cl cc);
void stampa()
{ int i; cout << a << ' ' << b << endl;
for (i=0;i<4;i++) cout << s.vv1[i] << ' '; cout << '\t';
for (i=0;i<4;i++) cout << s.vv2[i] << ' '; cout << endl;
cout << endl;
}
};
Il file es1.s è in Assembly e non lo sto a riportare in quanto non è quello la causa del problema (almeno penso :P ).
Premesso questo quando do il comando:
gxx -o es1 -fno-elide-constructors es1.s prova1.cpp
mi da il seguente errore:
In function `main':
prova1.cpp:(.text+0xae): undefined reference to `cl::cl(int*)'
prova1.cpp:(.text+0x14f): undefined reference to `cl::elab1(st, double&)'
collect2: ld returned 1 exit status
Qualcuno sa dirmi come posso risolvere? Grazie