[英]Is cout Guaranteed to Have the ctype<char> facet?
鑒於: auto foo = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"s
我可以將所有字符轉換為小寫:
use_facet<ctype<char>>(cout.getloc()).tolower(data(foo), next(data(foo), foo.size()));
但這取決於包含ctype<char>
facet
cout.getloc()
。
假設我正在使用未經修改的cout
,我可以假設cout.getloc()
將包含facet
ctype<char>
或者我需要在使用之前確認:
has_facet<ctype<char>>(cout.getloc())
從cppreference :
在C ++程序中構建的每個語言環境至少包含以下標准方面[...]:
- 的std :: CTYPE <炭>
- ...
任何語言環境,甚至不是cout
對象的語言環境都支持std::ctype<char>
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.