4
std :: endl이 std :: cout 및 std :: wcout과 함께 작동하는지 궁금합니다.std :: endl은 cout과 wcout 모두에서 작동합니까?
누구나 분명히 알 수 있습니까?
std :: endl이 std :: cout 및 std :: wcout과 함께 작동하는지 궁금합니다.std :: endl은 cout과 wcout 모두에서 작동합니까?
누구나 분명히 알 수 있습니까?
예. 사실, std::endl
은 std::basic_ostream
템플릿의 전문화에 대한 조작자로 작동 할 함수 템플릿입니다.
좀 더 상세히
: 가basic_ostream<charT, traits> &
operator<<(basic_ostream<charT, traits> (*pf)(basic_ostream<charT, traits> &));
적합한 기능에 과부하를 호출의 효과 return pf(*this)
이다 27.7.3.6은 다음과 같이 std::basic_ostream
템플릿 operator<<
대한 과부하를 포함 할 것을 규정하고있다. 따라서 std::cout << std::endl
이라고 말하면 실제로는 std::endl(std::cout)
이되어 스트림 객체에 대한 참조를 반환합니다.
다른 모든 ostream 조작기는 입력 조작자와 동일한 방식으로 작성됩니다.
endl
함수 템플릿 마법 지정된 캐릭터 타입에 맞는 "개행"데이터를 생성 widen('\n')
호출이다.
테스트 코드를 작성하는 것은 어떻습니까? – asheeshr
나는 그가 wcout과 함께 endl을 사용하는 것에 문제가 있는지 묻는 것을 의미한다고 생각합니다. – ctor
머니퓰레이터가 작동하는 방식을 설명하는 세부 정보를 추가했습니다. –