|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Member
Iscritto dal: May 2007
Città: MacLandia
Messaggi: 142
|
[C/C++] problema .c/.cpp e .h
Ciao a tutti,
premetto che non sono molto ferrato in ambito linux, me la cavo il tanto che basta per sopravvivere. Detto ciò ho un problema con un progetto in C/C++ e ho necessità di creare un file .cpp con all'interno delle funzioni il cui prototipo è dichiarato in un .h , in italiano questa è una libreria! file che contiene il main: #include <Lib/lib.h> nel lib.h: void foo () ; e nel lib.cpp: void foo ( ) { /* ... */ } e naturalmente non va. nel lib.h devo mettere extern? lo devo mettere nel .cpp? purtroppo non so come fa!! Grazie!
__________________
once you go Mac, you never go back! |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: May 2004
Città: Napoli
Messaggi: 773
|
Ma non si capisce niente
Che vuol dire che non va? Che errori ricevi? Hai parlato di libreria, ma poi parli di main; quindi stai semplicemente compilando separatamente i due file cpp o devi effettivamente realizzare una libreria? In questo caso, come compili?
__________________
If builders built buildings the way programmers wrote programs, then the first woodpecker that came along would destroy civilization. --Gerald Weinberg |
|
|
|
|
|
#3 |
|
Member
Iscritto dal: May 2007
Città: MacLandia
Messaggi: 142
|
Si ora che l'ho riletto, effettivamente non si capisce una mazza
Allora, io ho un cpp che contiene il main. in questo cpp io metto #include <Lib/lib.h> ed eclipse fa sparire la linea tratteggiata sotto, vuol dire che il path del file è corretto. Ora, io nel .h metto il prototipo, oltre al prototipo devo mettere altro? devo includere il cpp in cui è contenuto il codice a cui il prototipo fa riferimento? Quando compilo il compilatore si lamenta che non riesce a trovare la funzione che io chiamo all'interno del main. Più che altro mi serve sapere quale è la prassi, poi mi arrangio io Grazie
__________________
once you go Mac, you never go back! |
|
|
|
|
|
#4 | |
|
Senior Member
Iscritto dal: May 2004
Città: Napoli
Messaggi: 773
|
Quote:
Ad esempio, potrebbe trattarsi di un errore del linker: magari non hai aggiunto al progetto il file in cui hai definito le funzioni.
__________________
If builders built buildings the way programmers wrote programs, then the first woodpecker that came along would destroy civilization. --Gerald Weinberg |
|
|
|
|
|
|
#5 |
|
Member
Iscritto dal: May 2007
Città: MacLandia
Messaggi: 142
|
Ok risolto!! era un problema del linker
Grazie mille!
__________________
once you go Mac, you never go back! |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 20:37.




















