C,C++/공부 낙서
2022. 11. 3.
공부하면서 빠트린 것들 끄적끄적 - 문자열, 배열, 클래스
char* s1 = "abc"; char s2[] = "abc"; s1은 문자열 상수, s2는 문자열 변수입니다. s1 정적영역에서 생성이 되었고 변경이 불가능합니다. s2는 배열의 시작 주소값을 가리키므로 메모리 위치는 바꿀 수 없지만 값은 바꿀 수 있습니다. int Test_Array[10];가 있다면 Test_Array[10]는 배열의 첫번째를 가리킵니다. 배열은 연속된 메모리의 집합입니다. 하지만 리스트는 불연속적인 메모리로 구성되어 있어서 블럭 단위로 검사를 하는 캐시 특성상 적중률이 낮을 수 밖에 없습니다. 클래스의 내부 멤버 함수들은 암묵적으로 인라인화 됩니다. 함수의 인라인화는 컴파일 타임일 때 진행이 됩니다. 클래스에 가상함수가 선언이 되어있다면 그 클래스에 있는 모든 함수는 가상함수 테..