//xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx // // STRINGS // //xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx #include "XToolsCommon.h" #include "XStringArray.h" const XStringArray NullXStringArray; XStringArray::XStringArray() : XStringArraySuper() { } //------------------------------------------------------------------------------------------------- // //------------------------------------------------------------------------------------------------- void XStringArray::AddStrings(const wchar_t *Val1, ...) { va_list va; const wchar_t *p; { XString* newS = new XString; newS->takeValueFrom(Val1); AddReference(newS, true); } va_start(va, Val1); p = VA_ARG(va, const wchar_t *); while ( p != nullptr ) { XString* newS = new XString; newS->takeValueFrom(Val1); AddReference(newS, true); p = VA_ARG(va, const wchar_t *); } va_end(va); } XString XStringArray::ConcatAll(const XString& Separator, const XString& Prefix, const XString& Suffix) const { xsize i; XString s; if ( size() > 0 ) { s = Prefix; s += ElementAt(0); for ( i=1 ; i