Come annotare matrici nidificate di struct o classi la via ungherese?
-
21-08-2019 - |
Domanda
ho un wich array contiene un'altra matrice
dovrei annotare in questo modo?
pseudocodice:
rgrgTest = newArray(2)
Che cosa succede se l'array contiene cioè una struct?
pseudocodice:
rggrTest = newArray(2).newStruct()
O questo modo vale a dire se voglio classificare i tipi di dati del struct?
pseudocodice:
rggrlstlTest = newArray(2).newStruct(int id, str desc, int value)
Soluzione
Il modo "giusto" è dettata dal vostro standard di codifica e la lista dei prefissi.
L'ordine dei prefissi rappresenta in genere l'ordine in cui le cose che rappresentano sarebbero lette nella tua lingua madre.
Utilizzare i prefissi singola lettera (o una lettera singoli + numeri per tipi interi) per fermare i nomi diventando troppo ingestibile, quindi forse 'U8' per 1 byte intero senza segno, 'a' per array, 'r' per struct ( come in "record").
Non includere gli elementi della struct all'interno del prefisso; che appena diventa troppo ingombrante.
Quindi, per fare qualche esempio:
au8My1DArray[] // A 1-dimensional array of unsigned 1-byte integers
aau8My2dArray[][] // A 2-dimensionnal array of unsigned 1-byte integers
arMyArray[] // A 1-dimensional array of structs
Nota: Questo è sistemi di notazione ungherese, e sembra essere molto impopolare con gli utenti Stack Overflow, ma non lasciatevi scoraggiare! E 'ancora comune in software embedded.
Si veda anche la href="http://en.wikipedia.org/wiki/Hungarian_notation" rel="nofollow Wikipedia articolo sull'argomento.