Re: doplnění prvků do struktury
Jaroslav Buchta
jaroslav.buchta na hascomp.cz
Úterý Květen 7 19:36:09 CEST 2024
Ono ted je spis trendem zabranit uzivateli jakkoli do internich struktur
zasahovat, nebo je pouzivat. Treba novejsi verze FreeRTOS uz maji v
hlavickovych souborech anonymizovane prvky struktur, jen sedi delka, s
kterymi se manipuluje zasadne API funkcemi.
Pro zminene ucely se pouzivaji nejake uzivatelem definovane ukazatele, s
kterymi se ale zase pracuje jen prostrednictvim API funkci (context, tag
atp.). Me to prijde jako dobry trend, ktery dost omezi problemy s
bezpecnosti a prenositelnosti kodu.
Dne 07.05.2024 v 19:30 Pavel Hudeček napsal(a):
> Mě na tom nepřijde nic špatného, tedy za předpokladu, že je jisté, že
> se to nestane později zdrojem problémů, zejména ohledně délky
> struktury. Aneb jestli je to interní záležitost, tak je to jedno, ale
> když se to pak třeba někam pošle, nebudou data jednotlivých uživatelů
> kompatibilní.
>
> PH
>
> Dne 07.05.2024 v 18:02 Martin Záruba napsal(a):
>>
>> Mám soubor, třeba muj.h ve kterém je deklarovaná struktura x, třeba
>>
>> struct{
>> inta;
>> int b;
>> }x;
>>
>> Soubor je pomocí include vložen do hlavního programu. A já bych
>> potřeboval, aby uživatel, který použije #include muj.h mohl do té
>> struktury vložit další prvky, takže struktura by se o tyto prvky
>> (které v ní nejsou definované) rozšířila. Vymyslel jsem toto:
>>
>> structstru {
>> inta;
>> int b;
>> #ifdefuser
>> user
>> #endif
>> };
>>
>> A v uživatelském programu použít
>>
>> #defineuser\
>> intc; \
>> intd;
>>
>> Asi to vypadá jako divný požadavek, ale mě jde o to, aby struktura x
>> byl jeden prvek, který obsahuje jak mé, tak uživatelem vytvořené členy.
>>
>> Je na tom něco v nepořádku nebo to lze udělat líp?
>>
>
> _______________________________________________
> HW-list mailing list - sponsored bywww.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list
------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://list.hw.cz/pipermail/hw-list/attachments/20240507/07962653/attachment.htm>
Další informace o konferenci Hw-list