ios_base 클래스ios_base Class

이 클래스는 템플릿 매개 변수에 따라 달라지지 않는 입력 및 출력 스트림에 공통된 스토리지 및 멤버 함수를 설명합니다.The class describes the storage and member functions common to both input and output streams that do not depend on the template parameters. (클래스 템플릿 basic_ios 은 일반적 이며 템플릿 매개 변수에 따라 달라 지는 것을 설명 합니다.)(The class template basic_ios describes what is common and is dependent on template parameters.)

Ios_base 클래스의 개체는 다음 항목으로 구성되는 형식 지정 정보를 저장합니다.An object of class ios_base stores formatting information, which consists of:

  • 형식의 개체에 있는 형식 플래그 fmtflags 입니다.Format flags in an object of type fmtflags.

  • 형식의 개체에 있는 예외 마스크 iostate 입니다.An exception mask in an object of type iostate.

  • 형식의 개체에 있는 필드 너비 int 입니다.A field width in an object of type int.

  • 형식의 개체에 있는 표시 전체 자릿수 int 입니다.A display precision in an object of type int.

  • 형식의 개체에 있는 로캘 개체 locale 입니다.A locale object in an object of type locale.

  • 형식의 요소와 포인터가 있는 두 개의 확장 가능한 배열 long voidTwo extensible arrays, with elements of type long and void pointer.

클래스 ios_base의 개체는 스트림 상태 정보, 형식의 개체 iostate 및 콜백 스택도 저장 합니다.An object of class ios_base also stores stream state information, in an object of type iostate, and a callback stack.

멤버Members

생성자Constructors

속성Name 설명Description
ios_baseios_base ios_base 개체를 생성합니다.Constructs ios_base objects.

TypedefsTypedefs

NameName 설명Description
event_callbackevent_callback register_call에 전달된 함수에 대해 설명합니다.Describes a function passed to register_call.
fmtflags 출력의 모양을 지정하는 상수입니다.Constants to specify the appearance of output.
iostate 스트림의 상태를 설명하는 상수를 정의합니다.Defines constants describing the state of a stream.
openmodeopenmode 스트림과 상호 작용하는 방법을 설명합니다.Describes how to interact with a stream.
seekdirseekdir 오프셋 작업에 대한 시작 지점을 지정합니다.Specifies starting point for offset operations.

열거형Enums

NameName 설명Description
eventevent 이벤트 유형을 지정합니다.Specifies event types.

상수Constants

NameName 설명Description
adjustfieldadjustfield internal | left | right로 정의된 비트 마스크입니다.A bitmask defined as internal | left | right.
appapp 각 삽입 전에 스트림의 끝에 검색을 지정합니다.Specifies seeking to the end of a stream before each insertion.
ateate 해당 제어 개체를 처음 만들 때 스트림의 끝에 검색을 지정합니다.Specifies seeking to the end of a stream when its controlling object is first created.
badbitbadbit 스트림 버퍼의 무결성 손실을 기록합니다.Records a loss of integrity of the stream buffer.
basefieldbasefield dec | hex | oct로 정의된 비트 마스크입니다.A bitmask defined as dec | hex | oct.
begbeg 시퀀스의 시작을 기준으로 한 검색을 지정합니다.Specifies seeking relative to the beginning of a sequence.
binarybinary 파일을 텍스트 스트림이 아니라 이진 스트림으로 읽도록 지정합니다.Specifies that a file should be read as a binary stream, rather than as a text stream.
boolalphaboolalpha bool 숫자 값이 아닌 이름 (예: 및)으로 형식의 개체를 삽입 또는 추출 하도록 지정 합니다 true false .Specifies insertion or extraction of objects of type bool as names (such as true and false) rather than as numeric values.
curcur 시퀀스 내에서 현재 위치를 기준으로 하는 검색을 지정합니다.Specifies seeking relative to the current position within a sequence.
decdec 10진수 형식의 정수 값을 삽입 또는 추출하도록 지정합니다.Specifies insertion or extraction of integer values in decimal format.
종단end 시퀀스의 끝을 기준으로 한 검색을 지정합니다.Specifies seeking relative to the end of a sequence.
eofbiteofbit 스트림에서 추출할 때 파일 끝을 기록합니다.Records end-of-file while extracting from a stream.
failbitfailbit 스트림에서 유효한 필드를 추출하지 못하는 경우를 기록합니다.Records a failure to extract a valid field from a stream.
fixedfixed 고정 소수점 형식(지수 필드 없음)의 부동 소수점 값을 삽입하도록 지정합니다.Specifies insertion of floating-point values in fixed-point format (with no exponent field).
floatfieldfloatfield fixed | scientific으로 정의된 비트 마스크입니다.A bitmask defined as fixed | scientific
goodbitgoodbit 모든 상태 비트를 지웁니다.All state bits clear.
hexhex 16진수 형식의 정수 값을 삽입 또는 추출하도록 지정합니다.Specifies insertion or extraction of integer values in hexadecimal format.
inin 스트림에서 추출하도록 지정합니다.Specifies extraction from a stream.
internalinternal 생성된 숫자 필드의 내부에 있는 점에서 채우기 문자를 삽입하여 필드 너비를 채웁니다.Pads to a field width by inserting fill characters at a point internal to a generated numeric field.
비어left 왼쪽 맞춤을 지정합니다.Specifies left justification.
진수로oct 8진수 형식의 정수 값을 삽입 또는 추출하도록 지정합니다.Specifies insertion or extraction of integer values in octal format.
outout 스트림에 삽입하도록 지정합니다.Specifies insertion to a stream.
오른쪽right 오른쪽 맞춤을 지정합니다.Specifies right justification.
과학scientific 공학용 형식(지수 필드 사용)의 부동 소수점 값을 삽입하도록 지정합니다.Specifies insertion of floating-point values in scientific format (with an exponent field).
showbaseshowbase 생성된 정수 필드의 기수를 표시하는 접두사를 삽입하도록 지정합니다.Specifies insertion of a prefix that reveals the base of a generated integer field.
showpointshowpoint 생성된 부동 소수점 필드에서 소수점을 무조건 삽입하도록 지정합니다.Specifies unconditional insertion of a decimal point in a generated floating-point field.
showposshowpos 생성된 음수가 아닌 숫자 필드에 더하기 기호를 삽입하도록 지정합니다.Specifies insertion of a plus sign in a nonnegative generated numeric field.
skipwsskipws 특정 추출 전에 선행 공백은 건너뛰도록 지정합니다.Specifies skipping leading white space before certain extractions.
trunctrunc 해당 제어 개체가 만들어지면 기존 파일의 콘텐츠를 삭제하도록 지정합니다.Specifies deleting contents of an existing file when its controlling object is created.
unitbufunitbuf 각 삽입 후 출력이 플러시되도록 합니다.Causes output to be flushed after each insertion.
바꾸는uppercase 특정 삽입의 소문자에 해당하는 대문자를 삽입하도록 지정합니다.Specifies insertion of uppercase equivalents of lowercase letters in certain insertions.

FunctionsFunctions

NameName 설명Description
실패로failure 멤버 클래스는 클래스 템플릿 basic_ios에서 멤버 함수 clear 에 의해 throw 되는 모든 예외에 대 한 기본 클래스로 사용 됩니다.The member class serves as the base class for all exceptions thrown by the member function clear in class template basic_ios.
flagsflags 현재 플래그 설정을 설정하거나 반환합니다.Sets or returns the current flag settings.
getlocgetloc 저장된 로캘 개체를 반환합니다.Returns the stored locale object.
imbueimbue 로캘을 변경합니다.Changes the locale.
InitInit iostream생성 될 때 표준 개체를 만듭니다.Creates the standard iostream objects when constructed.
iwordiword iword로 저장할 수 있는 값을 할당합니다.Assigns a value to be stored as an iword.
전체 자릿수precision 부동 소수점 숫자에 표시할 자릿수를 지정합니다.Specifies the number of digits to display in a floating-point number.
pwordpword pword로 저장할 수 있는 값을 할당합니다.Assigns a value to be stored as a pword.
register_callbackregister_callback 콜백 함수를 지정합니다.Specifies a callback function.
setfsetf 지정된 플래그를 설정합니다.Sets the specified flags.
sync_with_stdiosync_with_stdio iostream및 C 런타임 라이브러리 작업이 소스 코드에 표시 되는 순서 대로 발생 하는지 확인 합니다.Ensures that iostream and C run-time library operations occur in the order that they appear in source code.
unsetfunsetf 지정된 플래그가 해제되도록 합니다.Causes the specified flags to be off.
widthwidth 출력 스트림의 길이를 설정합니다.Sets the length of the output stream.
xallocxalloc 변수가 스트림에 포함된다고 지정합니다.Specifies that a variable shall be part of the stream.

연산자Operators

NameName 설명Description
연산자 =operator= ios_base 개체에 사용할 대입 연산자입니다.The assignment operator for ios_base objects.

요구 사항Requirements

헤더:<ios>Header: <ios>

네임스페이스: stdNamespace: std

이벤트event

이벤트 유형을 지정합니다.Specifies event types.

enum event {
    erase_event,
    imbue_event,
    copyfmt_event};

설명Remarks

이 형식은 register_callback에 등록된 함수의 인수로 사용되는 콜백 이벤트를 저장할 수 있는 개체에 대해 설명하는 열거 형식입니다.The type is an enumerated type that describes an object that can store the callback event used as an argument to a function registered with register_callback. 고유 이벤트 값은 다음과 같습니다.The distinct event values are:

  • copyfmt_event- copyfmt호출의 끝에서 발생 하는 콜백을 식별 하기 위해 예외 마스크 를 복사 하기 바로 전에 발생 합니다.copyfmt_event, to identify a callback that occurs near the end of a call to copyfmt, just before the exception mask is copied.

  • erase_event- copyfmt호출이 시작 될 때 또는 ** * 이**에 대 한 소멸자 호출이 시작 될 때 발생 하는 콜백을 식별 합니다.erase_event, to identify a callback that occurs at the beginning of a call to copyfmt, or at the beginning of a call to the destructor for *this.

  • imbue_event-함수가 반환 되기 직전에 imbue에 대 한 호출의 끝에서 발생 하는 콜백을 식별 합니다.imbue_event, to identify a callback that occurs at the end of a call to imbue, just before the function returns.

예제Example

예제는 register_callback을 참조하세요.See register_callback for an example.

event_callbackevent_callback

register_call에 전달된 함수에 대해 설명합니다.Describes a function passed to register_call.

typedef void (__cdecl *event_callback)(
    event _E,
    ios_base& _Base,
    int _I);

매개 변수Parameters

_E_E
이벤트입니다.The event.

_Base_Base
이벤트가 호출된 스트림입니다.The stream in which the event was called.

_I_I
사용자 정의 숫자입니다.A user-defined number.

설명Remarks

이 형식은 register_callback에 등록할 수 있는 함수에 대한 포인터를 설명합니다.The type describes a pointer to a function that can be registered with register_callback. 이러한 형식의 함수는 예외를 throw하면 안 됩니다.This type of function must not throw an exception.

예제Example

event_callback을 사용하는 예제는 register_call을 참조하세요.See register_call for an example that uses event_callback.

실패로failure

failure 클래스는 예외로 throw된 모든 개체의 형식에 대한 기본 클래스를 iostreams 라이브러리의 함수별로 정의하여 스트림 버퍼 작업 중 검색된 오류를 보고합니다.The class failure defines the base class for the types of all objects thrown as exceptions, by functions in the iostreams library, to report errors detected during stream buffer operations.

namespace std {
    class failure : public system_error {
    public:
        explicit failure(
            const string& _Message,
            const error_code& _Code = io_errc::stream);

        explicit failure(
            const char* str,
            const error_code& _Code = io_errc::stream);
    };
}

설명Remarks

what()에서 반환된 값은 _Message의 복사본이며, _Code에 기반한 테스트로 확대될 수 있습니다.The value returned by what() is a copy of _Message, possibly augmented with a test based on _Code. _Code를 지정하지 않은 경우 make_error_code(io_errc::stream)가 기본값입니다.If _Code is not specified, the default value is make_error_code(io_errc::stream).

예제Example

// ios_base_failure.cpp
// compile with: /EHsc
#include <iostream>
#include <fstream>

int main ( )
{
    using namespace std;
    fstream file;
    file.exceptions(ios::failbit);
    try
    {
        file.open( "rm.txt", ios_base::in );
        // Opens nonexistent file for reading
    }
    catch( ios_base::failure f )
    {
        cout << "Caught an exception: " << f.what() << endl;
    }
}
Caught an exception: ios_base::failbit set

flagsflags

현재 플래그 설정을 설정하거나 반환합니다.Sets or returns the current flag settings.

fmtflags flags() const;
fmtflags flags(fmtflags fmtfl);

매개 변수Parameters

fmtflfmtfl
fmtflags 설정입니다.The new fmtflags setting.

반환 값Return Value

이전 또는 현재 fmtflags 설정입니다.The previous or current fmtflags setting.

설명Remarks

플래그 목록은 ios_base:: fmtflags를 참조하세요.See ios_base::fmtflags for a list of the flags.

첫 번째 멤버 함수는 저장된 형식 플래그를 반환합니다.The first member function returns the stored format flags. 두 번째 멤버 함수는 fmtfl 을 형식 플래그에 저장 하 고 이전에 저장 된 값을 반환 합니다.The second member function stores fmtfl in the format flags and returns its previous stored value.

예제Example

// ios_base_flags.cpp
// compile with: /EHsc
#include <iostream>
#include <fstream>

int main ( )
{
    using namespace std;
    cout << cout.flags( ) << endl;
    cout.flags( ios::dec | ios::boolalpha );
    cout << cout.flags( );
}
513
16896

fmtflagsfmtflags

출력의 모양을 지정하는 상수입니다.Constants to specify the appearance of output.

class ios_base {
public:
   typedef implementation-defined-bitmask-type fmtflags;
   static const fmtflags boolalpha;
   static const fmtflags dec;
   static const fmtflags fixed;
   static const fmtflags hex;
   static const fmtflags internal;
   static const fmtflags left;
   static const fmtflags oct;
   static const fmtflags right;
   static const fmtflags scientific;
   static const fmtflags showbase;
   static const fmtflags showpoint;
   static const fmtflags showpos;
   static const fmtflags skipws;
   static const fmtflags unitbuf;
   static const fmtflags uppercase;
   static const fmtflags adjustfield;
   static const fmtflags basefield;
   static const fmtflags floatfield;
   // ...
};

설명Remarks

ios에서 조작자를 지원합니다.Supports the manipulators in ios.

형식은 서식 플래그를 저장할 수 있는 개체를 설명하는 비트 마스크 형식입니다.The type is a bitmask type that describes an object that can store format flags. 고유 플래그 값(요소)은 다음과 같습니다.The distinct flag values (elements) are:

  • dec - 10진수 형식의 정수 값을 삽입 또는 추출합니다.dec, to insert or extract integer values in decimal format.

  • hex - 16진수 형식의 정수 값을 삽입 또는 추출합니다.hex, to insert or extract integer values in hexadecimal format.

  • oct - 18진수 형식의 정수 값을 삽입 또는 추출합니다.oct, to insert or extract integer values in octal format.

  • showbase - 생성된 정수 필드의 기수를 표시하는 접두사를 삽입합니다.showbase, to insert a prefix that reveals the base of a generated integer field.

  • internal - 생성된 숫자 필드의 내부에 있는 점에서 채우기 문자를 삽입하여 필요에 따라 필드 너비를 채웁니다.internal, to pad to a field width as needed by inserting fill characters at a point internal to a generated numeric field. 필드 너비 설정에 대 한 자세한 내용은을 참조 하십시오 setw .(For information on setting the field width, see setw).

  • left - 생성된 필드(왼쪽 맞춤)의 끝 부분에서 채우기 문자를 삽입하여 필요에 따라 필드 너비를 채웁니다.left, to pad to a field width as needed by inserting fill characters at the end of a generated field (left justification).

  • right - 생성된 필드(오른쪽 맞춤)의 시작 부분에서 채우기 문자를 삽입하여 필요에 따라 필드 너비를 채웁니다.right, to pad to a field width as needed by inserting fill characters at the beginning of a generated field (right justification).

  • boolalpha- bool 숫자 값이 아닌 이름 (예: 및)으로 형식의 개체를 삽입 하거나 추출 true false 합니다.boolalpha, to insert or extract objects of type bool as names (such as true and false) rather than as numeric values.

  • fixed - 고정 소수점 형식(지수 필드 없음)의 부동 소수점 값을 삽입합니다.fixed, to insert floating-point values in fixed-point format (with no exponent field).

  • scientific - 공학용 형식(지수 필드 사용)의 부동 소수점 값을 삽입합니다.scientific, to insert floating-point values in scientific format (with an exponent field).

  • showpoint - 생성된 부동 소수점 필드에서 소수점을 무조건 삽입합니다.showpoint, to insert a decimal point unconditionally in a generated floating-point field.

  • showpos - 생성된 음수가 아닌 숫자 필드에 더하기 기호를 삽입합니다.showpos, to insert a plus sign in a nonnegative generated numeric field.

  • skipws - 특정 추출 전에 선행 공백을 건너뜁니다.skipws, to skip leading white space before certain extractions.

  • unitbuf - 각 삽입 후 출력을 플러시합니다.unitbuf, to flush output after each insertion.

  • uppercase - 특정 삽입의 소문자에 해당하는 대문자를 삽입합니다.uppercase, to insert uppercase equivalents of lowercase letters in certain insertions.

또한 다음 몇 개의 값이 유용합니다.In addition, several useful values are:

  • adjustfield - internal | left | right로 정의된 비트 마스크adjustfield, a bitmask defined as internal | left | right

  • basefield - dec | hex | oct로 정의됨basefield, defined as dec | hex | oct

  • floatfield - fixed | scientific으로 정의됨floatfield, defined as fixed | scientific

이러한 형식 플래그를 수정 하는 함수의 예는를 참조 하십시오 <iomanip> .For examples of functions that modify these format flags, see <iomanip>.

getlocgetloc

저장된 로캘 개체를 반환합니다.Returns the stored locale object.

locale getloc() const;

반환 값Return Value

저장된 로캘 개체입니다.The stored locale object.

예제Example

// ios_base_getlock.cpp
// compile with: /EHsc
#include <iostream>

int main( )
{
    using namespace std;
    cout << cout.getloc( ).name( ).c_str( ) << endl;
}
C

imbueimbue

로캘을 변경합니다.Changes the locale.

locale imbue(const locale& _Loc);

매개 변수Parameters

_Loc_Loc
새 로캘 설정입니다.The new locale setting.

반환 값Return Value

이전 로캘입니다.The previous locale.

설명Remarks

멤버 함수는 로캘 개체에 _Loc 을 저장 한 다음 콜백 이벤트와를 보고 imbue_event 합니다.The member function stores _Loc in the locale object and then reports the callback event and imbue_event. 이전에 저장된 값을 반환합니다.It returns the previous stored value.

예제Example

샘플은 basic_ios:: imbue를 참조하세요.See basic_ios::imbue for a sample.

Cloud-initInit

iostream생성 될 때 표준 개체를 만듭니다.Creates the standard iostream objects when constructed.

class Init { };

설명Remarks

중첩 된 클래스는 iostream 임의 정적 개체에 대 한 생성자를 실행 하기 전에도 생성으로 표준 개체가 올바르게 생성 되도록 하는 개체를 설명 합니다.The nested class describes an object whose construction ensures that the standard iostream objects are properly constructed, even before the execution of a constructor for an arbitrary static object.

ios_baseios_base

ios_base 개체를 생성합니다.Constructs ios_base objects.

ios_base();

설명Remarks

(보호된) 생성자는 아무 작업도 수행하지 않습니다.The (protected) constructor does nothing. Init를 나중에 호출 하는 경우 basic_ios:: init 개체를 초기화 해야 안전 하 게 제거할 수 있습니다.A later call to basic_ios::init must initialize the object before it can be safely destroyed. 따라서 클래스 ios_base에 대 한 안전 사용은 클래스 템플릿 basic_ios의 기본 클래스로만 사용 됩니다.Thus, the only safe use for class ios_base is as a base class for class template basic_ios.

iostateiostate

스트림의 상태를 설명하는 상수의 형식입니다.The type of constants that describe the state of a stream.

class ios_base {
public:
   typedef implementation-defined-bitmask-type iostate;
   static const iostate badbit;
   static const iostate eofbit;
   static const iostate failbit;
   static const iostate goodbit;
   // ...
};

설명Remarks

이 형식은 스트림 상태 정보를 저장할 수 있는 개체에 대해 설명하는 비트 마스크 형식입니다.The type is a bitmask type that describes an object that can store stream state information. 고유 플래그 값(요소)은 다음과 같습니다.The distinct flag values (elements) are:

  • badbit - 스트림 버퍼의 무결성 손실을 기록합니다.badbit, to record a loss of integrity of the stream buffer.

  • eofbit - 스트림에서 추출할 때 파일 끝을 기록합니다.eofbit, to record end-of-file while extracting from a stream.

  • failbit - 스트림에서 유효한 필드를 추출하지 못하는 경우를 기록합니다.failbit, to record a failure to extract a valid field from a stream.

또한 goodbit 앞에서 언급 한 비트가 설정 되지 않은 ( goodbit 0으로 보장 됨)에도 유용한 값이 있습니다.In addition, a useful value is goodbit, where none of the previously mentioned bits are set (goodbit is guaranteed to be zero).

iwordiword

iword로 저장할 수 있는 값을 할당합니다.Assigns a value to be stored as an iword.

long& iword(int idx);

매개 변수Parameters

idxidx
iword로 저장할 값의 인덱스입니다.The index of the value to store as an iword.

설명Remarks

멤버 함수는 형식의 요소를 사용 하 여 확장 가능한 배열의 요소 idx 에 대 한 참조를 반환 합니다 long .The member function returns a reference to element idx of the extensible array with elements of type long. 모든 요소는 효과적으로 존재하며 처음에는 0 값을 저장합니다.All elements are effectively present and initially store the value zero. 반환 된 참조는 개체에 대 한 다음 호출 후에는 개체를 iword copyfmt에 대 한 호출로 변경 basic_ios:: copyfmt하거나 개체가 제거 된 후에 사용할 수 없습니다.The returned reference is invalid after the next call to iword for the object, after the object is altered by a call to basic_ios::copyfmt, or after the object is destroyed.

Idx 가 음수 이거나 요소에 대해 고유한 저장소를 사용할 수 없는 경우 함수는 setstate (badbit) 고유 하지 않을 수 있는 참조를 호출 하 고 반환 합니다.If idx is negative or if unique storage is unavailable for the element, the function calls setstate(badbit) and returns a reference that might not be unique.

형식의 모든 개체에서 사용할 고유 인덱스를 가져오려면를 ios_base 호출 xalloc 합니다.To obtain a unique index, for use across all objects of type ios_base, call xalloc.

예제Example

xalloc 사용 하는 방법에 대 한 샘플은를 참조 하세요 iword .See xalloc for a sample of how to use iword.

openmodeopenmode

스트림과 상호 작용하는 방법을 설명합니다.Describes how to interact with a stream.

class ios_base {
public:
   typedef implementation-defined-bitmask-type iostate;
   static const iostate badbit;
   static const iostate eofbit;
   static const iostate failbit;
   static const iostate goodbit;
   // ...
};

설명Remarks

형식은 bitmask type 여러 개체의 여는 모드를 저장할 수 있는 개체를 설명 하는입니다 iostream .The type is a bitmask type that describes an object that can store the opening mode for several iostream objects. 고유 플래그 값(요소)은 다음과 같습니다.The distinct flag values (elements) are:

  • app-각 삽입 전에 스트림의 끝을 검색 합니다.app, to seek to the end of a stream before each insertion.

  • ate-해당 제어 개체를 처음 만들 때 스트림의 끝을 검색 합니다.ate, to seek to the end of a stream when its controlling object is first created.

  • binary-텍스트 스트림이 아니라 이진 스트림으로 파일을 읽습니다.binary, to read a file as a binary stream, rather than as a text stream.

  • in-스트림에서 추출을 허용 합니다.in, to permit extraction from a stream.

  • out-스트림에 삽입을 허용 합니다.out, to permit insertion to a stream.

  • trunc-제어 개체가 생성 될 때 기존 파일의 내용을 삭제 합니다.trunc, to delete contents of an existing file when its controlling object is created.

예제Example

// ios_base_openmode.cpp
// compile with: /EHsc
#include <iostream>
#include <fstream>

int main ( )
{
    using namespace std;
    fstream file;
    file.open( "rm.txt", ios_base::out | ios_base::trunc );

    file << "testing";
}

연산자 =operator=

ios_base 개체에 대한 대입 연산자입니다.The assignment operator for ios_base objects.

ios_base& operator=(const ios_base& right);

매개 변수Parameters

오른쪽right
ios_base 형식의 개체입니다.An object of type ios_base.

반환 값Return Value

할당 중인 개체입니다.The object being assigned to.

설명Remarks

연산자는 저장된 서식 정보를 복사하여 확장 가능한 배열의 새 복사본을 만듭니다.The operator copies the stored formatting information, making a new copy of any extensible arrays. 그런 다음 ** * 이**를 반환 합니다.It then returns *this. 콜백 스택은 복사되지 않습니다.Note that the callback stack is not copied.

이 연산자는 ios_base에서 파생된 클래스에서만 사용됩니다.This operator is only used by classes derived from ios_base.

소수precision

부동 소수점 숫자에 표시할 자릿수를 지정합니다.Specifies the number of digits to display in a floating-point number.

streamsize precision() const;
streamsize precision(streamsize _Prec);

매개 변수Parameters

_Prec_Prec
표시할 유효 자릿수 또는 고정 표기법에서 소수점 뒤의 자릿수입니다.The number of significant digits to display, or the number of digits after the decimal point in fixed notation.

반환 값Return Value

첫 번째 멤버 함수는 저장된 표시 자릿수를 반환합니다.The first member function returns the stored display precision. 두 번째 멤버 함수는 _Prec 를 표시 전체 자릿수에 저장 하 고 이전에 저장 된 값을 반환 합니다.The second member function stores _Prec in the display precision and returns its previous stored value.

설명Remarks

부동 소수점 숫자는 fixed를 사용하여 고정 표기법으로 표시됩니다.Floating-point numbers are displayed in fixed notation with fixed.

예제Example

// ios_base_precision.cpp
// compile with: /EHsc
#include <iostream>

int main( )
{
    using namespace std;
    float i = 31.31234F;

    cout.precision( 3 );
    cout << i << endl;          // display three significant digits
    cout << fixed << i << endl; // display three digits after decimal
                                // point
}
31.3
31.312

pwordpword

pword로 저장할 수 있는 값을 할당합니다.Assigns a value to be stored as a pword.

void *& pword(int index);

매개 변수Parameters

인덱싱할index
pword로 저장할 값의 인덱스입니다.The index of the value to store as a pword.

설명Remarks

멤버 함수는 포인터 형식의 요소를 사용 하 여 확장 가능한 배열의 요소 인덱스 에 대 한 참조를 반환 합니다 void .The member function returns a reference to element index of the extensible array with elements of type void pointer. 모든 요소는 효과적으로 존재하며 처음에는 null 포인터를 저장합니다.All elements are effectively present and initially store the null pointer. 반환 된 참조는 개체에 대 한 다음 호출 후에는 개체를 pword copyfmt에 대 한 호출로 변경 basic_ios:: copyfmt하거나 개체가 제거 된 후에 사용할 수 없습니다.The returned reference is invalid after the next call to pword for the object, after the object is altered by a call to basic_ios::copyfmt, or after the object is destroyed.

Index 가 음수 이거나 요소에 대해 고유한 저장소를 사용할 수 없는 경우 함수는 setstate (badbit) 고유 하지 않을 수 있는 참조를 호출 하 고 반환 합니다.If index is negative, or if unique storage is unavailable for the element, the function calls setstate(badbit) and returns a reference that might not be unique.

형식의 모든 개체에서 사용할 고유 인덱스를 가져오려면를 ios_base 호출 xalloc 합니다.To obtain a unique index, for use across all objects of type ios_base, call xalloc.

예제Example

pword 사용 예제는 xalloc를 참조하세요.See xalloc for an example of using pword.

register_callbackregister_callback

콜백 함수를 지정합니다.Specifies a callback function.

void register_callback(
    event_callback pfn, int idx);

매개 변수Parameters

pfnpfn
콜백 함수에 대한 포인터입니다.Pointer to the callback function.

idxidx
사용자 정의 숫자입니다.A user-defined number.

설명Remarks

멤버 함수는 쌍을 {pfn, idx} 저장 된 콜백 스택 콜백 스택으로푸시합니다.The member function pushes the pair {pfn, idx} onto the stored callback stack callback stack. 콜백 이벤트 ev 를 보고 하면 함수는 레지스트리의 역순으로 식에 의해 호출 됩니다 (*pfn)(ev, *this, idx) .When a callback event ev is reported, the functions are called, in reverse order of registry, by the expression (*pfn)(ev, *this, idx).

예제Example

// ios_base_register_callback.cpp
// compile with: /EHsc
#include <iostream>
#include <fstream>

using namespace std;

void callback1( ios_base::event e, ios_base& stream, int arg )
{
    cout << "in callback1" << endl;
    switch ( e )
    {
    case ios_base::erase_event:
        cout << "an erase event" << endl;
        break;
    case ios_base::imbue_event:
        cout << "an imbue event" << endl;
        break;
    case ios_base::copyfmt_event:
        cout << "an copyfmt event" << endl;
        break;
    };
}

void callback2( ios_base::event e, ios_base& stream, int arg )
{
    cout << "in callback2" << endl;
    switch ( e )
    {
    case ios_base::erase_event:
        cout << "an erase event" << endl;
        break;
    case ios_base::imbue_event:
        cout << "an imbue event" << endl;
        break;
    case ios_base::copyfmt_event:
        cout << "an copyfmt event" << endl;
        break;
    };
}

int main( )
{
    // Make sure the imbue will not throw an exception
    // assert( setlocale( LC_ALL, "german" )!=NULL );

    cout.register_callback( callback1, 0 );
    cin.register_callback( callback2, 0 );

    try
    {
        // If no exception because the locale's not found,
        // generate an imbue_event on callback1
        cout.imbue(locale("german"));
    }
    catch(...)
    {
        cout << "exception" << endl;
    }

    // This will
    // (1) erase_event on callback1
    // (2) copyfmt_event on callback2
    cout.copyfmt(cin);

    // We get two erase events from callback2 at the end because
    // both cin and cout have callback2 registered when cin and cout
    // are destroyed at the end of program.
}
in callback1
an imbue event
in callback1
an erase event
in callback2
an copyfmt event
in callback2
an erase event
in callback2
an erase event

seekdirseekdir

오프셋 작업에 대한 시작 지점을 지정합니다.Specifies starting point for offset operations.

namespace std {
    class ios_base {
    public:
        typedef implementation-defined-enumerated-type seekdir;
        static const seekdir beg;
        static const seekdir cur;
        static const seekdir end;
        // ...
    };
}

설명Remarks

형식은 여러 클래스의 멤버 함수에 대 한 인수로 사용 되는 검색 모드를 저장할 수 있는 개체를 설명 하는 열거형 형식입니다 iostream .The type is an enumerated type that describes an object that can store the seek mode used as an argument to the member functions of several iostream classes. 고유 플래그 값은 다음과 같습니다.The distinct flag values are:

  • beg-시퀀스의 시작 (배열, 스트림 또는 파일)을 기준으로 검색 (현재 읽기 또는 쓰기 위치 변경) 합니다.beg, to seek (alter the current read or write position) relative to the beginning of a sequence (array, stream, or file).

  • cur-시퀀스 내에서 현재 위치를 기준으로 검색 합니다.cur, to seek relative to the current position within a sequence.

  • end-시퀀스의 끝을 기준으로 검색 합니다.end, to seek relative to the end of a sequence.

예제Example

// ios_base_seekdir.cpp
// compile with: /EHsc
#include <iostream>
#include <fstream>

int main ( )
{
    using namespace std;
    fstream file;
    file.open( "rm.txt", ios_base::out | ios_base::trunc );

    file << "testing";
    file.seekp( 0, ios_base::beg );
    file << "a";
    file.seekp( 0, ios_base::end );
    file << "a";
}

setfsetf

지정된 플래그를 설정합니다.Sets the specified flags.

fmtflags setf(
    fmtflags _Mask
);
fmtflags setf(
    fmtflags _Mask,
    fmtflags _Unset
);

매개 변수Parameters

_Mask_Mask
설정할 플래그입니다.The flags to turn on.

_Unset_Unset
해제할 플래그입니다.The flags to turn off.

반환 값Return Value

이전 형식 플래그입니다.The previous format flags

설명Remarks

첫 번째 멤버 함수는 플래그 (_Mask | _Flags) (선택한 비트 설정)를 효과적으로 호출한 다음 이전 형식 플래그를 반환 합니다.The first member function effectively calls flags(_Mask | _Flags) (set selected bits) and then returns the previous format flags. 두 번째 멤버 함수는를 효과적으로 호출한 flags(_Mask & fmtfl, flags & ~_Mask) 다음, 마스크에서 선택한 비트를 바꾸고, 이전 형식 플래그를 반환 합니다.The second member function effectively calls flags(_Mask & fmtfl, flags & ~_Mask) (replace selected bits under a mask) and then returns the previous format flags.

예제Example

// ios_base_setf.cpp
// compile with: /EHsc
#include <iostream>

int main( )
{
    using namespace std;
    int i = 10;
    cout << i << endl;

    cout.unsetf( ios_base::dec );
    cout.setf( ios_base::hex );
    cout << i << endl;

    cout.setf( ios_base::dec );
    cout << i << endl;
    cout.setf( ios_base::hex, ios_base::dec );
    cout << i << endl;
}

sync_with_stdiosync_with_stdio

iostream및 C 런타임 라이브러리 작업이 소스 코드에 표시 되는 순서 대로 발생 하는지 확인 합니다.Ensures that iostream and C run-time library operations occur in the order that they appear in source code.

static bool sync_with_stdio(
   bool _Sync = true
);

매개 변수Parameters

_Sync_Sync
모든 스트림이와 동기화 되어 있는지 여부를 나타냅니다 stdio .Whether all streams are in sync with stdio.

반환 값Return Value

이 함수에 대 한 이전 설정입니다.Previous setting for this function.

설명Remarks

정적 멤버 함수는 stdio 동기화 플래그를 초기에 저장 true 합니다.The static member function stores a stdio sync flag, which is initially true. true 인 경우이 플래그는 동일한 파일에 대 iostreams 한 작업이 함수 및 c + + 표준 라이브러리에 정의 된 함수 간에 적절 하 게 동기화 되도록 합니다.When true, this flag ensures that operations on the same file are properly synchronized between the iostreams functions and those defined in the C++ Standard Library. 그렇지 않으면 동기화가 보장 될 수도 있고 그렇지 않을 수도 있지만 성능이 향상 될 수도 있습니다.Otherwise, synchronization may or may not be guaranteed, but performance may be improved. 함수는 _Syncstdio 동기화 플래그에 저장 하 고 이전에 저장 된 값을 반환 합니다.The function stores _Sync in the stdio sync flag and returns its previous stored value. 표준 스트림에 대 한 작업을 수행 하기 전에만이를 안전 하 게 호출할 수 있습니다.You can call it reliably only before performing any operations on the standard streams.

unsetfunsetf

지정된 플래그가 해제되도록 합니다.Causes the specified flags to be off.

void unsetf(
   fmtflags _Mask
);

매개 변수Parameters

_Mask_Mask
해제하려는 플래그입니다.The flags that you want off.

설명Remarks

멤버 함수는 플래그( ~ _Mask & 플래그)를 효과적으로 호출 합니다 (선택한 비트 지우기).The member function effectively calls flags(~_Mask & flags) (clear selected bits).

예제Example

사용에 대 한 샘플은 ios_base:: setf 를 참조 하세요 unsetf .See ios_base::setf for a sample of using unsetf.

너비width

출력 스트림의 길이를 설정합니다.Sets the length of the output stream.

streamsize width( ) const;
streamsize width(
   streamsize _Wide
);

매개 변수Parameters

_Wide_Wide
출력 스트림의 원하는 크기입니다.The desired size of the output stream.

반환 값Return Value

현재 너비 설정입니다.The current width setting.

설명Remarks

첫 번째 멤버 함수는 저장 된 필드 너비를 반환 합니다.The first member function returns the stored field width. 두 번째 멤버 함수는 필드 너비에 _Wide 를 저장 하 고 이전에 저장 된 값을 반환 합니다.The second member function stores _Wide in the field width and returns its previous stored value.

예제Example

// ios_base_width.cpp
// compile with: /EHsc
#include <iostream>

int main( ) {
    using namespace std;

    cout.width( 20 );
    cout << cout.width( ) << endl;
    cout << cout.width( ) << endl;
}
20
0

xallocxalloc

변수가 스트림의 일부가 되도록 지정 합니다.Specifies that a variable is part of the stream.

static int xalloc( );

반환 값Return Value

정적 멤버 함수는 각 호출에서 증가 하는 저장 된 정적 값을 반환 합니다.The static member function returns a stored static value, which it increments on each call.

설명Remarks

멤버 함수 또는를 호출할 때 반환 값을 고유 인덱스 인수로 사용할 수 있습니다 iword pword .You can use the return value as a unique index argument when calling the member functions iword or pword.

예제Example

// ios_base_xalloc.cpp
// compile with: /EHsc
// Lets you store user-defined information.
// iword, jword, xalloc
#include <iostream>

int main( )
{
    using namespace std;

    static const int i = ios_base::xalloc();
    static const int j = ios_base::xalloc();
    cout.iword( i ) = 11;
    cin.iword( i ) = 13;
    cin.pword( j ) = "testing";
    cout << cout.iword( i ) << endl;
    cout << cin.iword( i ) << endl;
    cout << ( char * )cin.pword( j ) << endl;
}
11
13
testing

참고 항목See also

C + + 표준 라이브러리의 스레드 보안Thread Safety in the C++ Standard Library
iostream 프로그래밍iostream Programming
iostreams 규칙iostreams Conventions