NullSafeCompare
int result = StringUtils::NullSafeCompare(Code(), other.Code());
result = StringUtils::NullSafeCompare(CountryCode(), other.CountryCode());
result = StringUtils::NullSafeCompare(ScriptCode(), other.ScriptCode());
if (0 == StringUtils::NullSafeCompare(code, lCode)
&& 0 == StringUtils::NullSafeCompare(countryCode, lCountryCode)
&& 0 == StringUtils::NullSafeCompare(scriptCode, lScriptCode)) {
if (0 == StringUtils::NullSafeCompare(code, lCode)
&& 0 == StringUtils::NullSafeCompare(countryCode, lCountryCode)) {
if (0 == StringUtils::NullSafeCompare(code, lCode))
static int NullSafeCompare(const char* s1, const char* s2);