To w takim razie zajrzyj na svn do branches/api_0.7/konnekt . Jest już gotowa nowa, obiektowa obsługa tablic... (jej pośrednie, eksperymentalne stadium w postaci Konnekt::Tables już jest dostępne i korzysta z niego np. kUpdate. )
Nie widzę różnicy pomiędzy wywołaniem z twojej funkcji DTgetStr, które stworzy Value i przepchnie go przez DTget, a zrobieniem tego samego przez ciebie w f-cji oszczędzając jedno wywołanie... Pamiętaj, że MSVS ma całkiem zgrzebną optymalizację i najprawdopodobniej potraktuje f-cje typu GetStr i inline ...
Co do nadpisywania danych, jak już mówiłem pewności nie ma (w końcu K to program wielowątkowy), więc najlepiej rób kopie lokalne i używaj string ile wlezie...
Powiedziałbym nawet, żebyś nie używał DTget, bo w momencie gdy wyjdzie nowe API, razem ze wspierającą je wersją, f-cje jak DTgetStr, DTgetInt będą szybsze niż DTget!
Nie przesadzaj też z rozległością swojej biblioteki, API Konnekta przepisywane jest powoli na obiektowe. Najwcześniej pojawi się obsługa tablic (gotowa - Konnekt::Tables), nowa obsługa wtyczek (prawie gotowa - Konnekt::iPlugin), oraz nowa obsługa kontaktów i grup (wkrótce - iContact, oraz iContactGroup).
Oczywiście samo pisanie takiej nakładki na API ma sens, więc się przypadkiem nie zniechęcaj