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