On Wed, 2008-03-19 at 15:06 +0100, Wolfgang Rosenauer wrote: Hi Wolfgang I have assumed that you want maximum C compatibility. In the code you present kProperties[] is effectively just a PropertyPair* to static data. If you want to be able to grow the list of properties then I would create a nul-terminated PropertyPair** with pointers to the static PropertyPair structures. This avoids duplicating and copying the PropertyPair structures into a PropertyPair array. I have attached my example. Using the nul-terminator also makes it easier to keep track of the array size. This solution will not work if you need to pass the property list as a PropertyPair* object to other functions. Although if the other functions are your own it might not be too difficult to refactor them.