07. maj 2010 - 11:37Der er
6 kommentarer og 1 løsning
const array til at init en const
Hej experter, jeg sidder med et problem hvor jeg har prøvet at lave noget generisk kode. Problemet er, at jeg har et array af nogle outputs, så skal jeg ha lavet mig en maske 'over' de outputs. Da der er mulighed for at mine outputs kan blive flydtet, vil jeg gerne ha, at de kun er specificeret et sted.
Men det fejler i den sidste af de vedhæftede linier. error: initializer element is not constant
Kan jeg løse det på en let måde, eller skal jeg har mine outputs 2 steder i koden, lave defines til de enkelte outputs, eller løse det via meta programming, hvilket nk er ret overdrevet for sølle 3 tal :)
Det er et lille embedded system jeg skla lave det til, så c++ er ikke så velset.
Jeg har lavet det som lidt som den define du beskriver nu, det virker godt fint. Det eneste problem er, at under udviklings forløbet konner elementerne i arrayet til at skifte navne og antallet skifter sikkert også (manglende dokumentation).
Den vedligeholdelses lette løsning er at lave det med metaproramming. Det har jeg gjort med en enden del af dette projekt, og virker fint. Gid er der kode mæssigt meget overhead, især når der så kun er 3 elementer i arrayet som her.
Jeg tror konklussionen bliver at jeg venter med at konkludere noget :) men arne_v, kom med et svar.
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.