It won't hurt to try
[C++/윈도우프로그래밍응용]12. 배열 본문
배열이란?
같은 종류의 데이터를 순차적으로 메모리에 저장하는 구조
- 각각의 데이터는 인덱스를 통해 접근가능
- 하나의 이름으로 대용량의 데이터를 쉽게 저장 및 처리 가능
선언
<데이터형> <배열의 이름> [<배열의 크기>];
예) int scores[8];
초기화
<데이터형> <배열의 이름> [<배열의 크기>] = {값1, 값2, 값3 ...};
예) int scores[8] = {0,1,2,3,4,5,6,7};
int scores[] = {0,1,2,3,4,5,6,7};
범위 기반 for loop문
C++에도 향상된 for문이 있다.
for (<자료형> <변수> : 배열변수) {}
예) for (int score : scores) {}
※참고
기존의 for loop문
- for (int i = 0; i < 10; i++) {}
객체 배열
객체들이 모여있는 객체의 모음 (컨테이너)
- 자료형의 배열 생성이 가능하 듯, 객체가 모인 배열을 생성하는 것이 가능
객체 배열 선언 문법
<클래스의 이름> <변수명>[<배열의 크기>];
예) MyCalc c[3];
객체 배열을 사용한 도서 관리 프로그램 만들기
main.cpp
#include <iostream>
#include "book.h"
using namespace std;
int main()
{
Book books[2] = {
Book("용기책1", 5000),
Book("용기책2", 10000)
};
for(Book& book : books) {
book.print();
}
return 0;
}
book.h
#ifndef BOOK_H
#define BOOK_H
#include <iostream>
#include <string>
using namespace std;
class Book
{
string title;
int price;
public:
Book(string name, int price);
void print();
};
#endif // BOOK_H
book.cpp
#include "book.h"
Book::Book(string name, int price) : title(name), price(price)
{
}
void Book::print()
{
cout << "제목: " << title << ", 가격: " << price << endl;
}
300x250
300x250
'C++ > 윈도우프로그래밍응용' 카테고리의 다른 글
[C++/윈도우프로그래밍응용]14. 포인터의 특수한 용법 (0) | 2021.10.03 |
---|---|
[C++/윈도우프로그래밍응용]13. 포인터 (0) | 2021.10.03 |
[C++/윈도우프로그래밍응용]11. 접근제어와 멤버함수 (0) | 2021.09.23 |
[C++/윈도우프로그래밍응용]10. 생성자와 소멸자 (0) | 2021.09.23 |
[C++/윈도우프로그래밍응용]9. 클래스 작성 (0) | 2021.09.23 |
Comments