본문 바로가기

CHAPTER12 - String 클래스의 디자인 1. C++의 표준과 표준 String 클래스 string 클래스를 모델로 삼아서 연산자가 어떠한 형태로 오버로딩 되어 있는지 고민해 보고, 이와 유사한 문자열 처리 클래스를 직접 구현해 보는데 목적이 있다. 1.1 표준 string 클래스의 분석 먼저, string 클래스의 정의를 위해서 어떠한 것들이 요구되는지 하나씩 정리해 보겠다. (1) 문자열을 인자로 전달받는 생성자의 정의 (2) 생성자, 소멸자, 복사 생성자 그리고 대입 연산자의 정의 (3) 결합된 문자열로 초기화된 객체를 반환하는 + 연산자의 오버로딩 (4) 문자열을 덧붙이는 += 연산자의 오버로딩 (5) 내용비교를 진행하는 == 연산자의 오버로딩 (6) 콘솔입출력이 가능하도록 >>, 더보기
CHAPTER11 - 연산자 오버로딩 2 1. 반드시 해야 하는 대입 연산자의 오버로딩 이번에 설명하는 대입 연산자의 오버로딩은 그 성격이 복사 생성자와 매우 유사하다. 따라서 복사 생성자에 대한 이해를 바탕으로 대입 연산자를 이해하기 바란다. 1.1 객체간 대입연산의 비밀: 디폴트 대입 연산자 다음은 이전에 설명한 복사 생성자의 대표적인 특성이다. - 정의하지 않으면 디폴트 복사 생성자가 삽입된다. - 디폴트 복사 생성자는 멤버 대 멤버의 복사(얕은 복사)를 진행한다. - 생성자 내에서 동적 할당을 한다면, 그리고 싶은 복사가 필요하다면 직접 정의해야 한다. 그리고 다음은 이어서 설명할 대입 연산자의 대표적인 특성이다. - 정의하지 않으면 '디폴트 대입 연산자'가 삽입된다. - 디폴트 대입 연산자는 멤버 대 멤버의 복사(얕은 복사)를 진행한다.. 더보기
방정식과 부등식 - 6 1. 연립이차방정식의 풀이 1.1 미지수가 2개인 연립이차방정식의 풀이 (1) 연립방정식이 (일차식) = 0, (이차식) = 0의 꼴인 경우, 일차방정식을 어느 한 문자에 대하여 정리한 다음 대입. (2) (이차식) = 0, (이차식) = 0의 꼴인 경우 i. 한 이차방정식이 인수분해 가능하면 인수분해하여 두 일차방정식을 유도한다. ii. 각각의 일차방정식과 남은 다른 이차방정식을 연립하여 푼다. i. 두 이차방정식을 더하거나 빼어 이차항을 소거해 일차방정식을 유도한다. ii. 만들어진 일차방정식과 두 이차방정식 중 하나를 연랍하여 푼다. i. 두 이차방정식을 더하거나 빼어 상수항을 소거해 인수분해 가능한 이차방정식을 유도한다. (3) 연립방정식이 x + y = A, xy = B의 꼴로 변형되는 경우 -.. 더보기