14. december 2006 - 17:47
Der er
8 kommentarer og 1 løsning
fejl i c++-kode (pointer/referencer)
hi, jeg har følgende kode: --- #include <iostream> using namespace std; class xyz { }; class test { private: // array som skal indeholde // pointer, som peger på xyz-værdier xyz *pointerArray; public: test() { this->pointerArray = new xzy[10]; } xzy* getPointer(int); void setPointer(int, xzy&); ... }; xzy* test::getPointer(int index) { return (this->pointerArray[index]); } void test::setPointer(int index, xzy& xzyValue) { this->pointerArray[index] = xzyValue; } int main () { test test1; xzy xzy1; yzx *p; for (int i = 0; i < 10; i++) { test.setPointer(i, xzy1); } p = test.getPointer(5); } --- jeg vil gerne, at p peger på xyz1. problemet er, at min version ikke virker. er der en, som kan rette lidt rundt på koden?
Annonceindlæg tema
Forsvar & beredskab
Cybersikkerhed, realtidsdata og robuste it-systemer er blevet fundamentet for moderne forsvar.
14. december 2006 - 17:53
#1
i klassen og i set antager du at du har et array af xyz i get antager du at du har et array af xyz* det er ikke det samme
14. december 2006 - 17:58
#2
i klassen vil jeg gerne have et array, som ikke er fyldt op med xyz-værdier, men et array, som er fyldt op med adresser, som peger på xyz-værdier. i main vil jeg så kalle på test.getPointer(index) og få fat i adressen fra xyz1. sådan at p peger på xyz1
14. december 2006 - 17:59
#3
hvordan kan jeg få klassen til at antage, at arrayet pointerArray indeholder adresser af xyz-objekter?
14. december 2006 - 18:13
#4
hvad skal der stå som return-value i en class-funktion hvis class-funktionen skal returnere med en adresse som peger på et xyz-objekt?
14. december 2006 - 18:25
#5
xyz **pointerArray;
14. december 2006 - 18:26
#6
void test::setPointer(int index, xzy* xzyValue) { this->pointerArray[index] = xzyValue; }
15. december 2006 - 11:29
#7
mange tak! husk at skrive svar :-)
15. december 2006 - 14:57
#8
ok (overvej evt. mindre point)
15. december 2006 - 15:08
#9
hvis jeg selv er for dum til at finde ud af tingene selv og i hjælper mig. så er alle points fortjent :-)
Kurser inden for grundlæggende programmering