namespace kitae
1. if void f(x) (kitae.cpp) / void f() (mike.cpp)
> 함수충돌됨
2. namespace kitae { ~~~~ }
#include "mike.h" ▶ "" 는 사용자가 만든거 <> 는 기존에 있는거
>> 개발자 폴더에 있는지 봐야함.
void f() {~~~~ } >> 기태꺼쓰게되고
void m () {
f();
mike f(); >>> 마이크가 만든거 쓰게됨
>> c - 스트링으로 문자열 다루기
strcmp(), strlen(), strcpy() 등 대표적인 함수의 원형이 선언되어있다.
#include<cstring>이나 <string.h> 로
<iostream> 헤더파일 > <istream> 헤더파일 > <ostream> 헤더파일 > <ios> 헤더파일
- 헤더파일의 확장자
.h >> c에서 건너오느거 c/c++ 프로그램에서 사용가능
확장자 없음 >> c++ 에서만 사용가능 using namespace std; 와 함께 사용해야함.
전역 변수 : namespace / class 구분하지 않고 모든 영역에서 사용할 수 있는 변수나 함수를 하나로 쓸 수 있는 (물론 main내에서) ex. cin / cout etc. 어디서든 사용 가능
로컬 변수 :
-객체
표준으로 만드는게 클래스(상태 + function 이 포함되어있음.).
클래스는 붕어빵을 찍어내는 틀.
찍어내진 것들이 객체(붕어빵).
- 캡슐화
객체의 본질적인 특성. 그 안에 들어가있는것을 보호하기 위해서 만든것.
목적 : 객체 내 데이터에 대한 보안, 보호, 외부 접근 제한
- 객체의 일부분 공개
: 외부와의 인터페이스(정보 교환 및 통신)을 위해 객체의 일부분 공개
: TV에서는 on/off버튼, 밝기 조절, 채널 조절, 음량 조절 등 리모콘 객체와 통신하기 위함.
객체 ( 상태 + 행동 )으로 구성
- 클래스 : 객체를 만들어내기 위해 정의된 설계도, 틀
:클래스는 객체가 아니다. 실체도 아니고, 멤버 변수와 멤버함수 선언
: 객체는 틀 역할이지 실행이 되지는 않는다.
- 객체 : 객체는 생성될 때 클래스의 모양을 그대로 가지고 탄생
: 멤버 변수와 멤버 함수로 구성
: 메모리에 생성, 실체(instance) (>> 메모리에 올라가있는 상태, 실행이 될 수 있는 모양이 갖춰졌을때)라고도 부름
: 하나의 클래스 틀에서 찍어낸 여러 개의 객체 생성 가능
: 객체들은 상호 별도의 공간에 생성.
class TV {
bool on;
int channel;
int volume;
public:
void(액션만 함) powerOn() {...}
void(액션만 함) powerOff() {...} >> 이런식
>> 요것이 TV클래스
클래스 선언부와 클래스 구현부로 구성
클래스 선언부 > class 키워드를 이용해 클래스 선언
멤버 변수와 멤버 함수 선언
멤버함순는 포로토타입 형태로 선언
멤버에 대한 접근 권한 지정 (private, public, protected 중의 하나)
- 디폴트는 private
- public : 다른 모든 클래스나 객체에서 멤버의 접근이 가능함을 표시
클래스 구현부 >> 클래스를 가져와서 실행하는 것 , 주로 메인에 있음.
'C++' 카테고리의 다른 글
노래 인기도 데이터 군집 분석_메뉴얼 (0) | 2024.02.20 |
---|---|
C++ 기초 예제 풀이 (0) | 2023.05.19 |
C++ (0) | 2023.05.18 |
C++ (0) | 2023.05.18 |