我正在阅读一些项目代码,我发现了这里,这里的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();
}
我无法理解 - &gt;的含义ios :: in | ios :: out&lt; - 请帮帮忙! 谢谢
答案 0 :(得分:12)
ios::in
允许来自流的输入(读取操作)。ios::out
允许输出(写操作)到流。|
(按位OR运算符)用于组合两个ios
标志,ios::in | ios::out
传递给构造函数std::fstream
启用两个流的输入和输出。需要注意的重要事项:
std::ifstream
会自动设置ios::in
标记。std::ofstream
会自动设置ios::out
标记。std::fstream
自动没有ios::in
或ios::out
组。这就是为什么它们会在您的示例代码中明确设置。答案 1 :(得分:3)
memberData.open("member.txt", ios::in|ios::out);
当你想从文件中读取时,使用ios :: in 当您要写入文件
时,使用ios :: out
ios :: in | ios :: out表示ios :: in或ios :: out,表示使用的是
这是一个有用的链接
答案 2 :(得分:3)
ios::in
和ios::out
为openmode flags,在您的情况下与二进制或(|
)操作相结合。因此,文件被打开以进行读写。