C++에 대한 간단한 소개
자료형과 연산
객체 포인터를 사용해서 객체의 멤버들을 접근하고싶다면?화살표 사용this포인터객체 자기 자신을 가리키는 포인터.Const 수식자멤버 변수에 붙이는 경우상수가 된다. 멤버 함수에 붙이는 경우이 함수를 통해서 멤버 변수를 변경할 수 없다는 뜻객체에 const를 붙이는 경우
함수에 대한 설명
📒 변수의 범위(scope) 😜 지역변수(local variable) > 변수가 선언된 블록이 시작할 때 스택에 만들어지며 동시에 초기화 함수의 매개변수 또한 일종의 지역 변수이다. 😜 전역변수 >소스 파일 전체에서 접근이 가능하고 사용이 가능 전역변
배열
포인터(pointer) = 메모리의 주소를 가지고 있는 변수 변수의 주소를 알고싶다? => & 사용 int i = 10; char c = 69; cout << &i; // 변수 i가 저장된 메모리의 주소가 출력 cout << (void*)&c; // ##
레퍼런스 선언 및 초기화int& ref = var;레퍼런스는 메모리 공간에 할당되지 않는다.(가리키는 대상이 변경될 수 없다.)레퍼런스는 반드시 선언과 동시에 초기화되어야한다.(NULL이 될 수 없다)레퍼런스를 상수로 초기화하면 컴파일 에러참조하는 대상이 수시로 바뀌는
📒 멤버 함수의 외부 정의 > 멤버 함수가 클래스 내부에 정의되면 인라인 함수가 된다. >멤버 함수가 클래스 외부에 정의되면 일반적인 함수와 동일하게 호출된다. 스택에 인자들을 저장하고 복귀 주소를 저장한 후에 멤버 함수로 제어가 이동된다 💡 UML에서 멤버
멤버 함수가 아니지만 클래스의 내부 데이터에 접근할 수 있음.원형은 내부에 정의되지만 본체는 외부에서 따로 정의된다\*마찬가지로 클래스 내부 데이터 접근 가능1\. 멤버 함수2\. 비멤버 함수(friend)연산자를 멤버, 비멤버 함수로 정의 해보자.일반적으로 비멤버함수
생성자 호출 순서: 부모 -> 자식소멸자 호출 순서: 자식 -> 부모자식클래스의 생성자(): 부모클래스의생성자(){ ...}재정의의 조건 - 멤버 함수의 헤더는 그대로 두고 몸체만 교체. 헤더 부분은 부모 클래스의 헤더와 동일하여야 한다.객체들의 타입이 다르면 똑같은
다양한 타입에 대해 같은 일을 하는 기능데이터 타입을 변수처럼 표시해서 다양한 데이터 타입에서 사용가능하게 함.만약 char인 경우만 다르게 표현하고 싶다면!클래스 외부에 템플릿 멤버 함수를 정의하는 경우함수 템플릿처럼 함수 정의 앞에 template<typena