모두의 코드
C++ 레퍼런스 - ios::operator void*

작성일 : 2012-01-01 이 글은 3034 번 읽혔습니다.

아직 C++ 에 친숙하지 않다면 씹어먹는 C++ 은 어때요?

ios::operator `void*`

operator void*() const;

포인터로 변환한다. (형 변환 연산자 이다) ios 로 부터 얻어진 스트림 객체는 포인터로 캐스팅 될 수 있다. 만일 오류 플래그 (error flag - failbit 혹은 badbit) 중 어느 하나가 설정된다면 포인터는 NULL 포인터가 되고, 아니면 NULL 이 아닌 포인터가 된다.

리턴된 포인터는 다른 어떤 변수를 가리키는 것이 아니고 단순히 오류 플래그가 설정되었는지, 아닌지만 알려주는 역할을 한다.

인자

없다

리턴값

만일 failbit 이나 badbit 이 설정되어 있으면 NULL 포인터를 리턴하고 아니면 NULL 포인터가 아닌 것을 리턴한다.

실행 예제

/*

이 예제는
http://www.cplusplus.com/reference/iostream/ios/operator_voidpt/
에서 가져왔습니다.

*/
#include <fstream>
#include <iostream>
using namespace std;

int main() {
  ifstream is;
  is.open("test.txt");

  if ((void*)is == 0) cerr << "Error opening 'test.txt'\n";

  return 0;
}

실행 결과

템플릿 멤버 정의

(basic_ios<charT, traits>)operator void*() const;

연관된 것들

  • ios::fail : failbitbadbit 이 설정되었는지 확인한다.

  • ios::operator!: 스트림 객체를 확인한다.

첫 댓글을 달아주세요!
프로필 사진 없음
강좌에 관련 없이 궁금한 내용은 여기를 사용해주세요

    댓글을 불러오는 중입니다..