본문 바로가기

개발공부

(33)
다중포인터와 동적 다차원 배열 int main() { const int row = 3; const int col = 5; const int s2da[row][col] = { {1, 2, 3, 4, 5}, {6, 7, 8, 9, 10}, {11, 12, 13, 14, 15} }; int *r1 = new int[col] {1, 2, 3, 4, 5}; int *r2 = new int[col] {6, 7, 8, 9, 10}; int *r3 = new int[col] {11, 12, 13, 14, 15}; int **rows = new int*[row] {r1, r2, r3}; for(int r = 0; r < row; ++r) { for(int c = 0; c < col; ++c) { cout
포인터와 참조의 멤버 선택 { Person person; person.age = 5; person.weight = 30; Person &ref = person; ref.age = 15; Person *ptr = &person; ptr -> age = 30; (*ptr).age = 20; Person &ref2 = *ptr; ref2.age = 45; std::cout
참조변수 reference variable int main() { int value = 5; int *ptr = nullptr; ptr = &value; int &ref = value; cout
자료형에게 가명 붙여주기 #include #include #include int main() { using namespace std; std::vectorpairlist; return 0; } 위 코드는 아래와 같이 쓸 수 있다. int main() { using namespace std; //typedef vectorpairlist_t;//또는 using pairlist_t = vector;//이렇게 쓸 수 있다. pairlist_t pairlist1; pairlist_t pairlist2; return 0; } 주의할 점은 '=' 기호를 사용하기 때문에 assignment라고 생각할 수 있는데 문법이 그런거라서 전혀 다르다.
전역변수와 정적변수 #include using namespace std; int value = 123; int main() { cout
전처리기의 활용 #include #include using namespace std; #defing LIKE_APPLE int main() { #ifdef LIKE_APPLE//정의가 되어있으면! cout
C++의 기초적인 사용법 식별자(identifier) : 결국 메모리 주소를 사람이 보기 위한 이름으로 바꾸어 놓은 것뿐이다. 지역범위(local scope) : int main() { int x = 0; { int x = 1; } { int x = 2; } return 0; } 지역변수는 영역을 벗어나면 사용할 수 없게 된다. 지역변수가 차지하고 있던 메모리는 그 지역 변수가 영역을 벗어날때 '스택'메모리로 반납된다. 반납된 메모리는 다음 지역 변수가 사용할 수 있도록 대기한다. 헤더파일(example.h) : .cpp에 함수를 적어놓으면 선언(declaration)이 필요하지만 .h로 적어놓으면 따로 선언이 필요하지 않다. //#include "경로"
assignment와 initialization #include int main() { int x = 123; //initialization x = 4; // assignment std::cout