본문 바로가기

C++13

[ C++ ] 함수 중복(Function Overloading) 함수 중복 동일한 이름의 함수가 공존하는 것이다. function overloading 이라고도 한다. 함수 중복 성공 조건 중복된 함수들의 이름이 동일해야한다. 중복된 함수들의 매개 변수 타입이 다르거나 개수가 달라야한다. 리턴타입은 함수 중복과 무관하다. 오버로딩 예시 #include #include using namespace std; int big(int a, int b) { if (a > b) { return a; } else { return b; } } int big(int a[], int size) { int res = a[0]; for (int i = 1; i < size; i++) { if (res < a[i]) { res = a[i]; } return res; } } int main().. 2021. 5. 4.
[ C++ ] 객체 포인터와 객체 - string 클래스 find() | C++ 행맨 게임 find() 찾을 문자열과 어디서부터 찾을 것인지에 대한 인덱스를 인자로 받는 함수이다. #include #include using namespace std; int main() { char c = 'A'; string str = "Apple pear"; int x = str.find("p", 0); int y = str.find("p", 3); cout a; int startindex = 0; int x = 0; int count = 0; while (true) { x = str4.find(a, startindex); if (x != -1) { startindex=x+1; ++count; } else { break; } } cout 2021. 4. 13.
[ C++ ] 객체의 동적 생성 및 반환 객체의 동적 생성 및 반환 형식 동적할당 클래스이름 *포인터변수 = new 클래스 이름; 클래스이름 * 포인터변수 = new 클래스 이름(생성자매개변수리스트); 해제 delete 포인터변수; 객체 동적생성 예제 원의 개수를 입력받고 Circle 배열을 동적생성하라. 반지름 값을 입력받아 Circle 배열에 저장하고, 면적이 100에서 200 사이인 원의 개수를 출력하라. #include #include using namespace std; class Circle { int radius; public: Circle(); ~Circle() {}; void setRadius(int r) { radius = r; }; double getArea() { return 3.14 * radius * radius; };.. 2021. 4. 6.
[ C++ ] C++ 동적 메모리 할당 및 반환 동적 메모리 할당 정적 할당 변수 선언을 통해 필요한 메모리 할당 동적 할당 필요한 양이 예측되지 않는 경우. 프로그램 작성시 할당 받을 수 없음 실행중에 힙 메모리에서 할당 -> 힙으로부터 할당 받는다. C 언어의 동적 메모리 할당 할당 : malloc 해제 : free 위 두개 라이브러리 함수를 사용한다. C++의 동적 메모리 할당/ 반환 new 연산자 기본타입 메모리 할당, 배열 할당, 객체 할당, 객체배열 할당 객체의 동적 생성 - 힙 메모리로부터 객체를 위한 메모리 할당 요청 객체할당시 생성자 호출 delete 연산자 new로 할당받은 메모리 반환 객체의 동적 소멸 - 소멸자 호출 뒤 객체를 힙에 반환한다. + 메모리 1. 코드영역 : 코드 2. 데이터 영역: 전역변수, static 변수( 프로.. 2021. 4. 6.