UIRepo++
User Interface Repository for C++
.... Items are keyed by either int or string, which would normally be the identifiers of the related window controls (but of course any type of data could be stored). UIRepo should give faster data access than searching arrays or lists. It includes optional mutex locks for use in a multi-threaded environment.
Example multi-threaded implementations for wxWidgets and .NET are included in the download.