|
| Fejlmeddelse Fra : Navigator |
Dato : 16-09-01 00:07 |
|
Jeg er ved at oprette en klasse "Elev" med de nedenstående parameter. Når
den kompileres fås flg fejlmeddelse:
#error Must use C++ for STDCOMP.H ,
Denne meddelse kommer fra selvsamme headerfil (STDCOMP.H)
Programmet ser sådan ud: (Det hele foregår i Borland Builder 5.0)
#include <iostream>
#include <string>
#include <cstdlib>
using namespace std;
class Elev
{
public:
Elev() {}; //default konstruktor
Elev(string ny_cpr_nummer, string ny_adresse, string ny_navn);
//Konstruktor
char koen(); // Finder konnet (sidste ciffer cpr ulige =
mand)
void SkiftAdresse(string skift_adresse); //Skifter adrese
bool operator != (const &Ens_cpr); //Skal sammenligne 2 cpr #
private:
string navn;
string adresse;
string cpr_nummer;
};
| |
Ivan Johansen (16-09-2001)
| Kommentar Fra : Ivan Johansen |
Dato : 16-09-01 00:31 |
|
Navigator wrote:
> Jeg er ved at oprette en klasse "Elev" med de nedenstående parameter. Når
> den kompileres fås flg fejlmeddelse:
>
> #error Must use C++ for STDCOMP.H ,
> Denne meddelse kommer fra selvsamme headerfil (STDCOMP.H)
Problemet er at du har bedt om at få compilet som C, men du benytter
nogen ting som kun er tilgængelige i C++.
Jeg har prøvet at indsætte din kode i et nyt projekt i BCB5 og det
compiler fint. Hvis du har brugt Console Wizard til at lave et projekt
skal du være sikker på at vælge C++. Sørg også for at bruge .cpp og ikke
..c som filtype.
Ivan Johansen
| |
Navigator (16-09-2001)
| Kommentar Fra : Navigator |
Dato : 16-09-01 20:18 |
|
Jo, men hvordan laver man så en headerfil (xxxx.h)? Det kan i Borland
Builder umiddelbart kun laves i c og ikke c++
"Ivan Johansen" <NG@Padowan.dk> skrev i en meddelelse
news:3BA3E4B0.9040401@Padowan.dk...
> Navigator wrote:
>
> > Jeg er ved at oprette en klasse "Elev" med de nedenstående parameter.
Når
> > den kompileres fås flg fejlmeddelse:
> >
> > #error Must use C++ for STDCOMP.H ,
> > Denne meddelse kommer fra selvsamme headerfil (STDCOMP.H)
>
> Problemet er at du har bedt om at få compilet som C, men du benytter
> nogen ting som kun er tilgængelige i C++.
>
> Jeg har prøvet at indsætte din kode i et nyt projekt i BCB5 og det
> compiler fint. Hvis du har brugt Console Wizard til at lave et projekt
> skal du være sikker på at vælge C++. Sørg også for at bruge .cpp og ikke
> .c som filtype.
>
> Ivan Johansen
>
| |
Ivan Johansen (16-09-2001)
| Kommentar Fra : Ivan Johansen |
Dato : 16-09-01 21:30 |
|
Navigator wrote:
> Jo, men hvordan laver man så en headerfil (xxxx.h)? Det kan i Borland
> Builder umiddelbart kun laves i c og ikke c++
Headerfiler, der normalt har typen .h, fungerer ens i C og C++. Det er
ganske enkelt bare noget man inkluder. Compileren kan ikke se forskel på
om koden står i en headerfil eller direkte i sourcekoden.
Hvis det er et C++ program skal sourcekoden, der kan inkludere alle de
headere den vil, ligge i en fil med endelsen .cpp.
Hvis du tager den kode du postede og sætter ind i en fil kaldet
test.cpp, så compiler den uden problemer. Du kan også sætte koden ind i
en header og inkludere den i test.cpp, hvilket compileren ikke kan se
forskel på.
Ivan Johansen
| |
Navigator (17-09-2001)
| Kommentar Fra : Navigator |
Dato : 17-09-01 12:22 |
|
Jamen, det er netop der problemet ligger. Hvis jeg laver en headerfil og
gemmer den som "xxxx.cpp", er der ingen problemer, den kompiler uden
besvære. Hvis jeg laver den som "xxxx.h", får jeg den omtalte fejl. ????
"Ivan Johansen" <NG@Padowan.dk> skrev i en meddelelse
news:3BA50BC1.7040108@Padowan.dk...
> Navigator wrote:
>
> > Jo, men hvordan laver man så en headerfil (xxxx.h)? Det kan i Borland
> > Builder umiddelbart kun laves i c og ikke c++
>
> Headerfiler, der normalt har typen .h, fungerer ens i C og C++. Det er
> ganske enkelt bare noget man inkluder. Compileren kan ikke se forskel på
> om koden står i en headerfil eller direkte i sourcekoden.
>
> Hvis det er et C++ program skal sourcekoden, der kan inkludere alle de
> headere den vil, ligge i en fil med endelsen .cpp.
>
> Hvis du tager den kode du postede og sætter ind i en fil kaldet
> test.cpp, så compiler den uden problemer. Du kan også sætte koden ind i
> en header og inkludere den i test.cpp, hvilket compileren ikke kan se
> forskel på.
>
> Ivan Johansen
>
| |
Kent Friis (17-09-2001)
| Kommentar Fra : Kent Friis |
Dato : 17-09-01 16:24 |
|
Den Mon, 17 Sep 2001 13:21:50 +0200 skrev Navigator:
>Jamen, det er netop der problemet ligger. Hvis jeg laver en headerfil og
>gemmer den som "xxxx.cpp", er der ingen problemer, den kompiler uden
>besvære. Hvis jeg laver den som "xxxx.h", får jeg den omtalte fejl. ????
Headerfiler skal ikke compileres, de skal kun #include's.
Mvh
Kent
--
Linux 0.12 is out
Windows 2000 Professional is now obsolete!!!
| |
|
|