profile
혼자 학습하기 위한 공간.
post-thumbnail

CPP_어소_64_iterator (5)

이부분인데호출 시점은 동일하다고 저번시간 까지 했었다.이부분은 참조가 아니라서 복사본을 return 하기때문에반환하는 것은 또다른 복사본이라 사라짐.그래서 this로 복사본을 만들고\++후위를 호출한 객체를 ++ 연산자 써주어서 호출하고return 으로는 복사본을 반환

약 13시간 전
·
0개의 댓글
post-thumbnail

CPP_RO_정수

Hello World라는 한줄 짜리 출력문이어셈블리 언어로 뜯어보면은어셈블리 한줄이 CPU instruction한개랑 (1ㄷ1 대칭)맞먹는다고 보면된다.우리가 배웠던 문법들과 안 배운 문법들이 등장을 한다.을 단순하게 생각하자.적절한 데이터를 저장하고 가공하는 것데이터

약 16시간 전
·
0개의 댓글
post-thumbnail

CPP_RO_스택 메모리

스택 메모리, 스택 프레임.이거 두개는 기본기임.스텍 메모리와 셋트이다.바다의 파도를 생각하면된다.스텍 메모리도 "높은 주소" -> "낮은 주소"로 늘어났다가 줄어들었다가 한다.왔다 갔다하는 방식으로 진행이 된다.지금 인 상태로 뭔가를 저장을 하고, 이상태에서 다른 함

약 18시간 전
·
0개의 댓글
post-thumbnail

CPP_RO_함수

함수 (프로시저 , 서브루틴)이렇게 PRINT_MSG라는 함수를 만들 수 있고call로 저곳으로 뛰어넘을 수 있다.(라벨과 비슷)레지스터를 사용하여eax, ebx에 입력값을 ecx에 반환해보도록 하자.cmp 를 사용하여 eax가 더 크다면(jg) -> L1ebx가 같거

약 23시간 전
·
0개의 댓글
post-thumbnail

CPP_어소_63_iterator (4)

전위연산자의 경우 반환타입이 iterator& (iterator를 참조하는것을 반환)하는 이유가 뭐때문이냐? => ++(++k) 하는 경우를 대비하기 위하여.이런경우 발생할 수 있기 때문에.우리는 iterator& 자체를 반환하면되는데operator++ 를 오버로딩 한

1일 전
·
0개의 댓글
post-thumbnail

CPP_어소_62_iterator (3)

iterator는 어떤 객체의 첫번째 주소를 알고있는 것이다.(데이터 변수의 이름이 첫번째 주소이다.)우리가 구현한 것은 문제점이 하나있는데가변배열이라 데이터를 계속 넣다보면 Resize를 해서 새로운 2배 크기의 메모리를 할당한다.그러면 iterator는 2배로 커진

3일 전
·
0개의 댓글
post-thumbnail

CPP_어소_61_iterator (2)

가변배열에서의 iteratorprivate의T\* == 8바이트, int 두개 8바이트long long == 8바이트그러면 가변배열 CArr객체를 하나 만들면 몇 byte노?=> 24바이트하면 바보병신임.iterator 클래스가 안에 선언되어있네?CArr(가변배열) 객

4일 전
·
0개의 댓글
post-thumbnail

CPP_어소_60_iterator(1)

는vector, list와 같은 자료구조 내에서데이터를 넣었을 때iterator를 통해 내부에 데이터를 접근 하기도 하고,순회 할 수도 있게 만들어주는 "반복자"이다.이런식으로 operator나 멤버함수로 순회 씹가능 하지만,vector도 iterator가 내부에 구현

5일 전
·
0개의 댓글
post-thumbnail

CPP_어소_59_STL(vector, list)

표준 라이브러리에서 제공해주는 가변배열표준 라이브러리에서 제공해주는 연결형 리스트이거 두개 다 당연히 "템플릿"이다.vector에는 당연히 push_front없는데배열에서 앞에다 넣는다?? => ㅈㄴ 비효율적앞에다가 데이터를 넣을 것이였으면당연히 리스트가 효율적이다.이

5일 전
·
0개의 댓글
post-thumbnail

CPP_어소_58_입출력 구현

이거 C객체 없이도 호출가능한거'::' 범위 확인하는 연산자.g_int는 지금 전역변수이다.왜? => 어떤 함수안에 선언을 하지 않았기 때문에접근 하려면 이렇게 해야함.cin, cout은 C, C++ 표준기능들이 namespace std안에 들어있는 것이다.그런데 이

5일 전
·
0개의 댓글
post-thumbnail

CPP_RO_배열과 주소

우리는 간단하게 맛보기만 하고 넘어갈 것이다.나중에 CPP에서 더 알아 볼것이다.배열과 리스트: 동일한 특성의 데이터들의 집합을 가리키는 자료구조둘의 가장 큰 차이는 구조적 차이라고 생각한다.배열의 경우 연속된 메모리 공간에 할당되고, 리스트의 경우 메모리가 연속적인

5일 전
·
0개의 댓글
post-thumbnail

CPP_RO_반복문

메모리에 문자열 올리면 0x00 으로 끝을 명시 해주어야함! 반복문 구현 어셈블리에서 반복문은 cmp, jumo를 이용해서 구현이 가능하다. 연습문제 1~100까지의 합 구하기 내가 구현 논리연산자 활용 👍 나는 지금 mov ax, 0했는데 0으로 밀

5일 전
·
0개의 댓글
post-thumbnail

CPP_RO_분기문

어셈블리에서는 if문이 딱하나의 문법으로 존재 하지 않아서 여러개 조합해서 만들어야한다.조건 -> 흐름문법CMP dst, src (dst가 기준)이렇게 계산을 하면 결과가 어딘가에는 저장이 되어있다.곱셈이나 나눗셈의 경우 "지정한" 레지스터에 저장이 됨.우리가 이전에

5일 전
·
0개의 댓글
post-thumbnail

CPP_RO_쉬프트 연산과 논리연산

계산기 사용법32에서 left shift 상태에서64나온다왜냐 왼쪽으로 비트 옮기면 2^1 만큼 증가함.PRINT_HEX '4' 는 4바이트 출력한다는거임2로 놔두면 5678 출력되는데 이유가 16진수 두자리는 1바이트 이고,저번시간에 배운https://vel

6일 전
·
0개의 댓글
post-thumbnail

CPP_어소_57_클래스 템플릿 리스트 구현

오늘은 연결형 리스트를 클래스버젼으로 만들어 볼 것이다.연결형 리스트는 클래스로, 리스트안에 들어갈 노드는 구조체로 만들것이다.C++ 문법 기준으로 구조체와 클래스의 차이는 없다.클래스라는게 생겨나면서 구조체의 기능들이 생성자, 소멸자, 상속 이런게 다 가능하기 때문에

6일 전
·
0개의 댓글
post-thumbnail

CPP_어소_56_클래스 템플릿

이렇게 해주는 순간 클래스 템플릿이 됨.클래스가 아니라 클래스들을 만들 수 있는 더 근본적인 원형이 된 것이다.그래서 타입을 정해주어야한다. 그래야 그런 버젼의 클래스가 생길것이고그 객체를 만들어서 쓸 것이라그러면 이거 다 T로 바뀌어야하나?인자는 어떻게 되야하나?왼쪽

6일 전
·
0개의 댓글
post-thumbnail

CPP_어소_55_함수 템플릿

이런식으로 함수 오버로딩이 가능하다.C이렇게 가능하고 < typename T > 에서 typename이라 되어있는 부분도 class라고 적어 주어도 OK.여기서 진짜 Class아니다.T가 "치환 자료형"이다.typename자리에 어떤게 들어갈지 요청을 했을 때,

6일 전
·
0개의 댓글
post-thumbnail

이동동기화

60FPS => 1초에 60장1/60 초마다 이동을 하는데이 프레임에 따라 1/60초를 정확하게 맞춰 주어야지만,다른사람도 똑같은 화면을 볼 수 있다.그래서 네트워크 부화 때문에 불가능하다.회사에서도 엄청난 노하우가 없다.컨텐츠에 따라 좀 다른데, (장르)클라에서 움직

7일 전
·
0개의 댓글
post-thumbnail

CPP_RO_사칙연산

이렇게 GET_DEC 입력으로 Input에 입력을 받아주고보면은 출력됨참고로 이런 문장이나 함수들은 이제 나중에 처다도 안 볼 것이니 걱정 ㄴㄴ.add a, b ( a = a + b )a는 레지스터 or 메모리b는 레지스터 or 메모리단, a, b 모두 메모리일 경우

7일 전
·
0개의 댓글
post-thumbnail

CPP_RO_문자와 레디안

이것을 알기위한 사전지식어소에서는 wchar_t arr10 = L"asd"; 뭐한 문자당 2바이트 할당했었는데... 뭐노? db == 1byte인데 어케됨?a db 0x00 이러헤 data 영역에 16진수가 들어갈거같지만데이터는 공평해서 메모리에 01010100이런거

7일 전
·
0개의 댓글