C++ 개념 정리 포스팅
안녕하십니까. Eun🦆입니다.
제가 공부하며 정리해둔 내용이 있어 포스팅하고자 합니다.
배움의 출처는 '열혈 C++ 프로그래밍'입니다.
2일차
11. 참조자 선언 범위
Int &ref = 20; (X) // 상수화 X
Int &ref; (X) // 선언과 동시에 변수로 초기화, 함수 선언하면서는 사용 가능
Int &ref = NULL; (X) // 초기화 X
Int *(&pref) = ptr; // *형식의 pref == ptr
Int **(&dpref) = dptr; // **형식의 dpref == dptr
12. Call-by-value // 값을 =으로 전달하는 호출 방식
→ 함수 외부에 선언된 변수 접근 불가능
13. Call=by-reference // 주소값으로 값을 전달하는 방식
→ 함수 외부에 선언된 변수도 조작 가능
14. const 참조자
void HappyFunc ( cons tint &ref ) { … }
→ HappyFunc 내에서 참조한 값으로 num 값을 변경 X
const int &ref = 50; // 참조자와 달리 const 참조자는 상수 참조 가능
15. 반환형이 참조형
Int & RefRetFuncone ( int &ref ) { //ref = num1
ref++;
return ref; } // ref = ref++;
&num2 = RefRetFuncone ( num1 ); // num2 = num1 참조자(반환형이 참조형인 경우만 가능)
num2 = RefRetFuncone ( num1 ); // num2 = num1 일시적 값만
// 지역 변수를 참조형으로 반환하면 오류 ( 지역 변수 값만 return )
16. 데이터 : 전역 변수가 저장되는 영역
스택 : 지역 변수 및 매개 변수가 저장되는 영역
힙 : malloc 함수 호출에 의해 프로그램이 실행되는 과정에서 동적으로 할당이 이뤄지는 영역
Malloc & free : malloc 함수 호출에 의해 할당된 메모리 공간은 free 함수 호출을 통해서 소멸되지 않으면 해체되지 않는다.
<-> new & delete 대체 (C++) // 클래스
17. ‘&’는 주소값 불러들임
*p : p는 포인터 기능 시작
P = ?(주소), *p=?(가 가리키는 곳)
18. C++에서는 구조체 안의 함수를 삽입하는 것이 가능
Car run99 = {‘’run99”, 100, 0}; // run99 구조체 선언
Run99.Accel( ); // run99 이름의 Car의 함수 사용
19. 구조체 안의 enum 상수 선언 ( = #define ? )
Enum { ? = ? … }; // namespace에도 선언 가능
20. 함수는 구조체 밖으로 뺄 수 있음
void Car :: Accel ( ) { … }
구조체 안에서는 자동으로 inline ( 매크로 )가 설정됨
외부는 void 앞에 inline 지정해야 함
네이버 블로그 리뉴얼입니다.
'개발 > C++' 카테고리의 다른 글
C++ 개념 정리 6일차 포스팅 (0) | 2022.05.21 |
---|---|
C++ 개념 정리 5일차 포스팅 (0) | 2022.05.21 |
C++ 개념 정리 4일차 포스팅 (0) | 2022.05.21 |
C++ 개념 정리 3일차 포스팅 (0) | 2022.05.21 |
C++ 개념 정리 1일차 포스팅 (0) | 2022.05.21 |
댓글