1
Changing the record separator for streams (operator >>) - FAILED
2
----------------------------------------------------------------
3
Everything operates in the following way:
4
a) Skipping all whitespaces
5
1) The istream::sentry nested class constructor is called for that
6
[ no way to override nested class in C++ ]
7
2) Spaces are checked using "ctype_base::space"
8
[ it could be dependent on the current facet (locale) ]
9
3) In the STLPort the following function stack is called [differs in gcc]
10
M_init_skip, M_skip_whitespaces, _is_not_wspace, ctype::is_space
11
b) Reading the formated value
12
1) For strings the reading stops on ctype_base::space.
13
2) For integer types - on the first in-appropriate symbol.
14
3) The following function is called:
15
__get_num [STLPort], num_get [gcc]
16
-------------------------------------------------------------------
19
SEE 'locale_facet.cpp' for WORKING EXAMPLE