C++ 각 변수의 정의 및 설명
닫기
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • 103
  • 104
  • 105
  • 106
  • 107
  • 108
  • 109
  • 110
  • 111
  • 112
  • 113
  • 114
  • 115
  • 116
  • 117
  • 118
  • 119
  • 120
  • 121
  • 122
  • 123
  • 124
  • 125
  • 126
  • 127
  • 128
  • 129
  • 130
  • 131
  • 132
  • 133
  • 134
  • 135
  • 136
  • 137
  • 138
  • 139
  • 140
  • 141
  • 142
  • 143
  • 144
  • 145
  • 146
  • 147
  • 148
  • 149
  • 150
  • 151
  • 152
  • 153
해당 자료는 10페이지 까지만 미리보기를 제공합니다.
10페이지 이후부터 다운로드 후 확인할 수 있습니다.

소개글

C++ 각 변수의 정의 및 설명에 대한 보고서 자료입니다.

목차

1. 포인터변수

2. 다차원배열

3. C++ 프로토타입

4. C++ 스트림 I/O

5. void 포인터

6. new, delete

7. 레퍼런스에 의한 전달

8. 함수 오버로딩

9. 추상 데이터 형

10. 데이터 멤버와 멤버 함수

11. 프렌드 함수

12. 연산자 오버로드

13. 출력을 위한 << 오버로딩

14. 생성자와 소멸자

15. 상속성의 구조

16. 복합과 상속

17. 초기 바인딩과 지연 바인딩

18. 순차 파일

본문내용


#include
class Item
{
public:
char partCode[5];
char descript[20];
int num;
float price;
Item() {}
Item(char P[], char D[], int N, float PR) : num(N), price(PR)
{
strcpy(partCode, P);
strcpy(descript, D);
}
};
class Inventory
{
Item parts[50];
public:
Inventory() {}
void prData();
void fromDisk();
};
void Inventory::prData()
{
int ctr = 0;
cout << setprecision(2) << setiosflags(ios::showpoint) << setiosflags(ios::fixed);
while (parts[ctr].partCode[0])
{
cout << "Part number: " << parts[ctr].partCode;
cout << "\tDescription: " << parts[ctr].descript << "\n";
cout << "Number in stock: " << parts[ctr].num;
cout << "\tPrice: $" << parts[ctr].price << "\n\n";
ctr++;
}
}
void Inventory::fromDisk()
{
ifstream invIn("INV.DAT");
if (!invIn)
{
cerr << "File doesn't exit!\n";
exit(1);
}
invIn.read((char *)this, sizeof(*this));
// read() 함수는 기록될 데이터의 바이트 수를 알아야 하는데, sizeof() 인수가 그것이다
}
void main()
{
Inventory parts;
parts.fromDisk();
parts.prData();
}
출력
---------------------------------------------------------------------------------
Part number: 3WI Description: Widgets
Number in stock: 14 Price: $2.34
Part number: 1BOL Description: Large Bolts
Number in stock: 36 Price: $0.45
Part number: 7WN Description: Wing Nuts
Number in stock: 109 Price: $0.17
◇ 랜덤-액세스 파일 ◇
☞ 파일 포인터는 항상 파일에서 액세스할 수 있는 다음 위치를 가리킨다. 파일 포인터를 이동시 키기 위해서는 seekg() 멤버 함수를 사용한다. 다음은 seekg() 멤버 함수의 형식이다.
seekg(offset, FileLoc);
offset은 FileLoc으로부터 액세스하고자 하는 바이트가 얼마나 되는지 알려주는 long integer로 표현된다. FileLoc은 ios::beg, ios::cur, ios::end의 세가지 위치 가운데 하나일 수 있다.
ios::beg는 파일에서 시작 바이트를 참조하며, ios::cur는 파일의 현재 위치를 참조한다. 그리고 ios::end는 파일의 마지막 바이트를 참조한다.
#include
class Item
{
public:
char partCode[5];
char descript[20];
int num;
float price;
void prData(int I)
{
cout << "Record number " << I << ":\n";
cout << "Part: " << partCode;
cout << "\tDescription: " << descript;
cout << "\nNumber: " << num;
cout << "\tPrice: " << price << "\n\n";
}
};
main()
{
fstream ioFile;
Item invItem;
ioFile.open("INV.DAT", ios::in | ios::out);
ioFile.seekg(0, ios::beg);
ioFile.read((char *)&invItem, sizeof(invItem));
invItem.prData(1);
ioFile.seekg(2 * sizeof(invItem), ios::beg);
ioFile.read((char *)&invItem, sizeof(invItem));
invItem.prData(3);
ioFile.seekg(sizeof(invItem), ios::beg);
ioFile.read((char *)&invItem, sizeof(invItem));
invItem.prData(2);
ioFile.seekg(0, ios::beg);
ioFile.read((char *)&invItem, sizeof(invItem));
ioFile.seekg(0, ios::beg);
invItem.price = 0.0;
ioFile.write((char *)&invItem, sizeof(invItem));
ioFile.seekg(0, ios::beg);
ioFile.read((char *)&invItem, sizeof(invItem));
invItem.prData(1);
return 0;
}
출력
---------------------------------------------------------------------------------
Record number 1:
Part: 3WI Description: Widgets
Number: 14 Price: 2.34
Record number 3:
Part: 7WN Description: Wing Nuts
Number: 109 Price: 0.17
Record number 2:
Part: 1BOL Description: Large Bolts
Number: 36 Price: 0.45
Record number 1:
Part: 3WI Description: Widgets
Number: 14 Price: 0
  • 가격3,000
  • 페이지수153페이지
  • 등록일2005.08.03
  • 저작시기2005.06
  • 파일형식한글(hwp)
  • 자료번호#301819
본 자료는 최근 2주간 다운받은 회원이 없습니다.
청소해
다운로드 장바구니