אהה, חשבתי שדיברת על בsource.
בכל אופן כל המחרוזות שאתה רוצה לבדוק, תוכל לעשות ממחלקה אחת (שיורשת מstd::string) שכל מופע רושם את עצמו באיזה static collection של פויינטרים ויכולה להיות למחלקה static method שעוברת על הcollection ובודקת אם יש כפילויות, או שהבדיקה יכולה לעשות בעת הרישום (אם אתה רוצה מראש למנוע את הכפילויות).