web-dev-qa-db-ja.com

ios :: in | ios :: outとは何ですか?

私はいくつかのプロジェクトコードを読んでいて、これを見つけました、ここでMembersOfLibrary()はMenberOfLibraryクラスのコンストラクタです

    class MembersOfLibrary {

  public:
    MembersOfLibrary();
    ~MembersOfLibrary() {}
    void addMember();
    void removeMember();
    unsigned int searchMember(unsigned int MembershipNo);
    void searchMember(unsigned char * name);
    void displayMember();
  private:
    Members    libMembers;

};

MembersOfLibrary::MembersOfLibrary() {

    fstream memberData;
    memberData.open("member.txt", ios::in|ios::out);
    if(!memberData) {
    cout<<"\nNot able to create a file. MAJOR OS ERROR!! \n";
    }
    memberData.close();
}

-> ios :: in | ios :: outの意味を理解できません<-助けてください!ありがとうございました

13
Prakhar Verma
  • ios::inは、ストリームからの入力(読み取り操作)を許可します。
  • ios::outは、ストリームへの出力(書き込み操作)を許可します。
  • |(ビット単位OR演算子)は、2つのiosフラグを結合するために使用されます。
    パスios::in | ios::outコンストラクターへ
    of std::fstreamは、ストリームのboth入出力を有効にします。

注意すべき重要事項:

  • std::ifstreamは自動的にios::inフラグセット。
  • std::ofstreamは自動的にios::outフラグセット。
  • std::fstreamにはios::inまたはios::out自動的に
    セットする。サンプルコードで明示的に設定されているのはそのためです。
14
emlai

ios::inおよびios::outopenmode flags であり、あなたの場合はバイナリまたは|)操作。したがって、ファイルは読み取りおよび書き込み用に開かれます。

4
 memberData.open("member.txt", ios::in|ios::out);

ios :: inは、ファイルから読み取りたいときに使用されます

ios :: outは、ファイルに書き込みたいときに使用されます

ios :: in | ios :: outは、ios :: inまたはios :: outを意味します。必要な方が使用されます

こちらが便利なリンクです

http://www.cplusplus.com/doc/tutorial/files/

3
Arun A S