Gå til innhold

1 klasse, 3 filer, bare tull!


Anbefalte innlegg

Driver og lærer meg klasser, men det går ikke sånn jeg hadde tenkt :cry:

Får ikke kompeleringsfeil, men det eneste som fungere er system("pause")

Det blir litt kjedelig i lengden. Hva er feil? hvorfor fungere ikke a.inn() og a.ut()?

 

--main.cpp--

#include "skriv.h"

#include <iostream>

using namespace std;

 

main(){

Skriv a;

a.inn();

a.ut();

system("pause");

}

 

--skriv.cpp--

#include "skriv.h"

#include <iostream>

#include <string>

using namespace std;

 

void Skriv::ut(){

cout << skrift;

}

 

void Skriv::inn(){

cout << "Skriv inn :" << endl;

cin >> skrift;

}

 

--skriv.h--

#ifndef SKRIV_H

#define SKRIV_H

#include <string>

using namespace std;

 

 

class Skriv{

 

public:

void skriv(){};

void ut();

void inn();

private:

string skrift;

};

#endif

Lenke til kommentar
Videoannonse
Annonse

Funka ikke det heller, kjører jo først a.inn() denne fungere heller ikke.

Jeg skal bare lage en klasse og ha dele den inn i 3 filer. Header fil, main fil og den en kode fil. Tenkte jeg skulle starte med en så enkel som mulig klasse. Noen som gidder skrive en utrolig enkel classe som ligger i 3 forskjellige klasser så kan jeg ta utgangs punkt i den?

Lenke til kommentar

Jeg vet ikke hva som ikke skulle funke her. Jeg tenkte at du muligens ikke fikk en utskrift fordi bufferet kanskje ikke ble flush'et til skjermen.

 

Med at a.inn() ikke funker, mener du at det aldri står "skriv inn" en gang? Skjer det noe annet i stedet? Feilmelding?

 

Er du sikker på at du kompilerer du begge .cpp filene? Jeg bruker linux selv, og kan derfor ikke gi noen konkrete opplysninger om hvordan du skal gjøre det hos deg.

Lenke til kommentar
Noen som gidder skrive en utrolig enkel classe som ligger i 3 forskjellige klasser så kan jeg ta utgangs punkt i den?

 

jeg la med construktor og deconstruktor også

 

 

 

 

 

main.h

#include "test.h"

 

testklasse thetestklasse; // starter klassen utenfor funsjonen

 

int main()

{

int tall;

tall = thetestklasse.returntall(); //tall burde være 234 etter dette

}

 

 

test.h

#pragma once

 

class testklasse

{

public:

testklasse(void);

~testklasse(void);

int returntall();

};

 

test.cpp

#include "testklasse.h"

 

testklasse::testklasse(void)

{

}

 

testklasse::~testklasse(void)

{

}

 

int testklasse::returntall()

{

return 234;

}

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...