Language20 [Geeks][Reference] References in C++ 잠시 놓았던 c++공부를 다시 시작. Reference의 첫 단원. 맨날 포인터와 레퍼런스를 같이 쓰는형태만 보다가 이걸보니 좀헷갈렸지만 학습완료. #include using namespace std; int main() { int x = 10; int &y = x; cout 2022. 11. 15. [oop in C++] Static members 오늘은 static member 에대해서 배워볼려한다. static 은 뭐 변하지않는느낌으로 변수가 변하지않는느낌이였는데 그게 아니라 모든 Object가 가지고있는 변수가 해당 Class에서 가져와 global variable 느낌이난다. 즉' a object에서 x 값이 변하면 그대로 b object에서의 x도 똑같이 변하는것. 1. 한개의 copy of memer가 생성이되고 이 한개의 카피를 모든 오브젝트들이 공유한다. 2. static data member 는 initialization 할때 모든 오브젝트들보다 먼저 선언되브로 클래스 밖에다 먼저 써줘야한다. 3. 클래스안에서만 보이며 lifetime은 영구적이다. 4. static member 혹은 function이 쓰였을때는 this 를 쓸 수.. 2022. 10. 12. [c++] <this> pointer 오호... c++ 에서 많이 보이는 this는 무엇인가. This 는 우리가 아는 * 포인터 같이 object의 현재 Memory address를 가르킨다. 그럼 this를 왜써야하는가? 1. 첫번쨰 이유로는 각각의 object 들은 각각의 copy된 data member (클래스 안에 변수들) 들을 가지나 모든 오브젝트들은 하나의 copy된 member function(클래스안에 함수들)만 가지게된다. 고로 및에 그림에서 object A가 run() 을 호출하면 object A에 있는 int x 값이 업데이트 되어야하는지 object B의 int x 가 업데이트 되는지 혼란스러운데 이때 *this 포인터가 어디 object에서 호출된것인지 명시해준다. ( 주의사항으로 non static member functio.. 2022. 10. 11. [C] pointer 대체 너는 왜이리 높은 산이냐... C++을 공부하면서 Pointer에 대한 막연한 phobia 가 있는데 이 기회를 빌어 정복해보고자한다. 근데 너무많네.. Point 가 메모리 기반으로 작동되고 일반 interger variable 을 다룰때와 Array 를 다룰때 좀 더 볶잡해지는 경우가 있다.. 일단 Array를 지칭하는 포인터는 여기까지하고... 차근차근 하면서 공부해야겠다. 좀더 알았던 사실들은 Pointer가 Array를 자체를 가르키는 경우 Arr[0]의 주소를 가르키게되고 표현하면 int (*Ptr)[5] 로 선언이 되며 Ptr =&arr 로 이닛이 된다. #include using namespace std; int main() { // Pointer to an integer int *p; // Pointer to an a.. 2022. 10. 7. 이전 1 2 3 다음