Avatar billede Dalgaard Nybegynder
15. december 2002 - 20:36 Der er 7 kommentarer og
1 løsning

C++ indsættelse i en vector

Jeg har oprettet følgende vector: vector<Vaesen*>monstre;

Jeg forsøger derefter at sætte f.eks. objekter ind i min "monstre" vector med:
this->monstre.push_back(new Trold("En stor, grum trold", 10, getFelt(j,i)));

Men får følgende kørselsfejl: error C2243: 'type cast' : conversion from 'class Trold *' to 'class Vaesen *const ' exists, but is inaccessible

Jeg ved det måske ikke er tilstrækkelig information til et svar, men programmet er efterhånden ret stort.
Avatar billede Dalgaard Nybegynder
15. december 2002 - 20:44 #1
Trold er en subklasse af Vaesen. Jeg ved ikke om nedarvning kan give nogen problemer mht. brug af vector.
Avatar billede arne_v Ekspert
15. december 2002 - 20:49 #2
Et gæt: conversion metoden fra Trold til Vaesen er ikke public.
Avatar billede arne_v Ekspert
15. december 2002 - 20:51 #3
Så lige din kommentar, så er mit gæt næppe rigtigt.

Man behøver ikke nogen konvertering fra en sub til en super klasse.
Avatar billede Dalgaard Nybegynder
15. december 2002 - 20:52 #4
øhh...hvor lang tid har du arbejdet med c++? fordi du er da for sej...du svarede også på mit spørgsmål i går. Jeg skal aflevere mit eksamensprojekt på tirsdag...du har reddet min røv! Tak!
Avatar billede Dalgaard Nybegynder
15. december 2002 - 20:53 #5
Jeg har ændret: class Trold:Vaesen
til: class Trold:public Vaesen
i min vaesen.h
...det virkede
Avatar billede arne_v Ekspert
15. december 2002 - 20:53 #6
Det var det ?

(jeg har arbejdet med C++ regelmæssigt siden 1989)
Avatar billede arne_v Ekspert
15. december 2002 - 20:54 #7
Ahh. Det forklarer jo sagen !
Avatar billede Dalgaard Nybegynder
15. december 2002 - 20:59 #8
der var jeg 10 år gammel...hehe...tak for hjælpen
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester