티스토리 뷰
03-1 C++에서의 구조체
구조체의 등장배경은 무엇인가?
연관 있는 데이터를 하나로 묶으면 관리가 용이하다
소프트웨어=데이터의 표현+데이터의 처리
C++에서의 구조체 변수의 선언
struct 키워드를 이용해 C에서 사용했다.
구조체 안에 함수 삽입하기.
함수도 같이 묶어버리면 어떻게 되겠는가?
C++에서는 구조체 안에 함수를 삽입하는 것이 허용된다.
구조체 안에 enum 상수의 선언
구조체 내에서만 유효한 enum, 다른 곳에서 사용X
함수는 외부로 뺄 수 있다.
선언되어 있는 변수 정보
정의되어 있는 함수 정보
struct Car
{
void showCar();
void Accel();
}
void showCar()
{
}
void Accel()
{
}
03-2 클래스(class)와 객체(object)
클래스와 구조체의 유일한 차이점
키워드를 struct 대신해서 class를 사용하면, 구조체가 아닌 클래스가 된다.
접근제어 지시자(접근제어 레이블)
public: 어디서든 접근허용
protected: 상속관계에 놓여있을 때, 유도클래스에서의 접근허용
private: 클래스 내(클래스 내에 정의된 함수)에서만 접근 허용
용어정리: 객체(Object), 멤버변수, 멤버함수
변수는 데이터
함수는 기능
C++에서의 파일 분할
Car.h 클래스의 선언을 담는다.
Car.cpp 클래스의 정의(멤버함수의 정의)를 담는다.
인라인 함수는 헤더파일에 함꼐 넣어야해요.
컴파일 과정에서 함수의 호출 문이 있는 곳에 함수의 몸체 부분이 삽입되어야 하므로
03-3 객체지향 프로그래밍의 이해
객체지향 프로그래밍의 이해
객체지향은 프로그래밍은 현실에 존재하는 사물과 대상, 그리고 그에 따른 행동을 있는 그대로 실체화 시키는 형태의 프로그래밍이다.
객체를 이루는 것은 데이터와 기능이다.
과욀장수의 정의와 멤버변수의 상수화에 대한 논의
사과의 판매가격은 일정하다.
나(me)를 표현하는 클래스의 정의
소유하고 있는 현금의 액수-> int myMoney;
소유하고 있는 사과의 수 -> int numOfApples;
클래스 기반의 두 가지 객체생성 방법
ClassName objName; // 일반적인 변수의 선언방식
ClassName *ptrObj=new ClassName; //동적 할당방식
객체간의 대화 방법(message passing 방법)
'프로그래밍 > 윤성우의 열혈 C++' 카테고리의 다른 글
Chapter 06 friend와 static 그리고 const (0) | 2022.03.08 |
---|---|
05 복사생성자(copy constructor) (0) | 2022.03.07 |
Chpater 04 클래스의 완성 (0) | 2022.03.05 |
Chapter 02 C언어 기반의 C++ 2 (0) | 2022.03.04 |
Part 01 C++로의 전환/ Chapter 01 C언어 기반의 C++1 (0) | 2022.03.03 |
- Total
- Today
- Yesterday
- 윤성우
- 류근관
- 뇌와행동의기초
- 파이썬
- 여인권
- Python
- 일본어
- 심리학
- 오블완
- K-MOOC
- 통계
- jlpt
- 인프런
- 백준
- 사회심리학
- c++
- 회계
- 인지부조화
- 보세사
- 일본어문법무작정따라하기
- 티스토리챌린지
- 코딩테스트
- C/C++
- 통계학
- 일문따
- 열혈프로그래밍
- EBS
- C
- stl
- 데이터분석
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |