To get the number of characters / codes utf8 'in std :: string, you can do this: move the string if char is between 0 and 127, this is one byte character, between 194 and 223 it has 2 byte characters (so as a result) , between 224 and 239 it has 3 bytes (thus, as a result), between 240 and 244 it has 4 bytes (thus, as a result).
Since wchar_t on Iphone, I think 32 bits, if you really want wstring , you can use UTF8CPP to convert to UTF32. UTF8CPP can also give you the point codes of your string.
But I do not understand why you are using C ++ for Iphone? See here: Objective-C Tuesdays: wide character strings