일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 그리디 알고리즘
- 성화봉송
- 외판원 순회
- multiset
- 창훈쓰다
- 이분탐색
- yolo
- 비트마스크
- 캘리그라피
- 영어회화 100일의 기적
- 삼성 코딩테스트
- DP
- 다음 지도 api
- 평창동계올림픽
- 생활코딩
- lower_bound
- upper_bound
- 위상정렬
- MST
- 백트레킹
- BOJ 2098
- 성화봉송주자
- boj
- BFS
- 언어의 온도
- 안드로이드 스튜디오
- Segment Tree
- 인간이 그리는 무늬
- 다이나믹 프로그래밍
- 다음 API
- Today
- Total
목록코딩/뇌자극C++ (5)
Hoon222y
이번에는 가장 많이 사용하는 프로그래밍 방법이며, 효율적인 객체지향 프로그래밍에 대해 알아보자이번시간에는 개념 정의 위주로 설명이 될 것 이다.객체지향 프로그래밍을 하면서 가장 많이 사용되는 용어인 객체와 클래스를 알아보자면 , 클래스와 객체는 붕어빵과 붕어빵 틀과 같은 관계이다.클래스는 구조체와 문법적인 관계가 비슷하나 함수까지도 맴버로 넣는다는점이 구조체와 다르다.또한 객체란 클래스를 이용하여 정의된 변수를 객체라고 한다. 이번에는 정보 은익(Data hiding)과 캡슐화에 대해 알아보자.정보은익이란 다른 객체의 내부를 모르게 하는것으로 정보를 숨기는 것이다. 즉 객체간의 연관성을 줄이는 것이다.캡슐화란 약속된 부분을 제외한 나머지 부분을 캡술로 감싸서 숨겨버리는 것으로 이걸 이용하여 정보은익을 할..
이번시간에는 헤더파일에 대해 알아보도록 하자.헤더파일을 만드는 목적은 큰 프로그램을 나누어 알아보기 쉽게함도 있고, 다른 프로그램을 만들대 참고하는 역할도 할수있다.두 점사이의 거리를 출력하는 프로그램을 cpp파일과 헤더파일로 나누었다. 헤더파일의 경우 #include "헤더파일명.h" 로 참고를 해준다. 헤더파일을 나누는 통상적인 규칙은 3가지가 있는데1)공유될 함수가 있는 구현파일의 이름을 따서 헤더파일을 만든다.2) 이 헤더파일에 공유될 함수의 원형을 적어준다.3) 공유될 함수를 호출할 구현파일에서는 이 헤더파일을 포함한다.4) 구현파일에 자기 자신에 대한 헤더파일을 포함하게 만든다. 정도이다. 마지막으로는 헤더파일이 두번 포함되는걸 막는 방법이다. 코드를 보자.중복을 막기위해 point.h 에 해..
이번에는 C,C++스타일 문자열을 혼합해서 사용하는 방법에 대해 알아보자 .각각의 스타일만 사용해도 되긴하지만, 큰 프로그램을 만드는 과정에서 여러사람이 문자열을 사용하는 방법이 각각이기 때문에 잘 혼합하여 사용하는것이 중요하다.다음 코드를 보자. C스타일과 C++ 스타일이 섞여있다.c_str()함수를 통해 문자열을 복사하는것을 볼 수 있다. 하지만 이 함수를 통해 얻은 문자열은 오로지 읽는 용도로 밖에 사용할 수 없다. 즉 cstyle을통해 cppstyle의 문자열을 변경할 수 없다는 뜻이다. 문자열을 완전히 얻어와 변경까지 가능하게 하고싶다면 strcpy() 함수를 사용해야 한다. 코드를 보자.코드를 보면 strcpy(cstyle,cppstyle.c_str()) 을 통해 문자열을 복사하고 문자열을 수..
이번에는 문자열에 대해 공부해 보도록 하겠다.문자열의 경우 C 스타일, C++스타일로 나뉘게 되는데, 먼저 C스타일 문자열에 대해 배워보도록 하자.C 스타일 문자열의 경우 간단히 말하면 '문자를 배열' 에 보관한다고 볼 수 있다. 코드를 보면서 이해해 보자.여기서 strcpy(dest , src) 의 의미는 src 내용을 dest에 복사한다는 뜻이다. 또한 strlen(src)는 src의 길이를 반환해주는 함수이다. strlen()함수는 NULL문자를 제외한 길이라는 점을 유의해야 한다.이번에는 문자열을 비교하고, 결합하는 방법에 대해 배우도록 하겠다. 코드를 보도록 하자.strcat(str1,str2)는 str1뒤에 str2를 합친 문자열을 str1 에 보관하도록 한다. 여기서 주의할 점은 str1의 ..
동적 메모리란 무엇이고 동적 메모리를 사용하는 이유는 무엇일까? 일단 동적메모리란 동적으로 메모리를 할당(Allocation)한다는 말이다. 정적 메모리 할당과 차이가 있다면 1) 메모리 크기를 프로그램이 실행하기전에 결정하는지, 프로그램을 실행하는 도중에 결정하는지2) 메모리를 할당하고 해제하는 시점이 자유로운지 이다.그리고 동적 메모리의 특징은 동적메모리 할당으로 할당한 메모리는 사용자가 직접 해제해주기 전까지는 절대로 컴퓨터에 의해 해제되는 일이 없다는 것이다.그럼 지금부터 동적 메모리 할당하는 방법에 대해 알아보자. 입력한 갯수만큼의 수를 합해주는 간단한 코드이다. 여기서 볼 부분은 int* arr= new int[size] 와 delete [] arr 이 부분이다.int* arr = new in..