게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
C++ 연산자 오버로딩에 관한 질문입니다.
게시물ID : computer_21523짧은주소 복사하기
작성자 : 마약파리소녀
추천 : 0
조회수 : 3297회
댓글수 : 6개
등록시간 : 2011/10/24 19:32:36
객체 생성 후에 파일 입출력 연산자 오버로딩을 통하여
파일에 출력을 하려고 합니다...
그런데 파일 출력을 오버로딩을 할려니까 자꾸 에러가 나네요 ㅠㅠ

#include<iostream>
#include<fstream>
#include<string>
#include<cstdlib>

using namespace std;

class Student
{
public:
Student(string n = NULL, int a = 1);
// 파일 출력 연산자 오버로딩
friend ofstream& operator<<(ofstream &fout, const Student &s);

private:
string name;//이름
int age;//나이
};

int main(void)
{
Student stu("Kim Min Jae", 25);//객체생성
ofstream fout;

fout << stu;//파일출력 연산자 오버로딩을 통한 출력

return 0;
}

Student::Student(string n, int a) : name(n), age(a)
{
}

ofstream& operator<<(ofstream &fout, const Student &s)
{
fout.open("test.txt", ios::out);

if(fout.fail())
{
cout << "file open Error" << endl;
exit(1);
}

fout << s.name << endl;
fout << s.age << endl;

fout.close();

return fout;
}
전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호