[문과 코린이의 IT 기록장] C,C++ - 상속과 다형성 2 : 가상함수 ( 기초 클래스의 포인터로 객체를 참조하기, 함수의 오버라이딩과 포인터 형, 가상함수(Virtual Function), 'OrangeMedia 급여관리 확장성 ..
[문과 코린이의 IT 기록장] C,C++ - 상속과 다형성 2 : 가상함수 ( 기초 클래스의 포인터로 객체를 참조하기, 함수의 오버라이딩과 포인터 형, 가상함수(Virtual Function), 'OrangeMedia 급여관리 확장성 문제'의 주석 부분 해결, 순수 가상함수(Pure Virtual Function)와, 추상 클래스(Abstract Class), 다형성) 1. 기초 클래스의 포인터로 객체를 참조하기 ex 1 ) class Base{ public: void BaseFunc() { cout
[문과 코린이의 IT 기록장] C,C++ - 연산자 오버로딩 7 : 포인터 연산자 오버로딩(포인터 연산자 오버로딩, 스마트 포인터 (Smart Pointer), ( )연산자의 오버로딩과 펑터(Functor), 임시객체로의 자동 형 ..
[문과 코린이의 IT 기록장] C,C++ - 연산자 오버로딩 7 : 포인터 연산자 오버로딩 (포인터 연산자 오버로딩, 스마트 포인터 (Smart Pointer), ( )연산자의 오버로딩과 펑터(Functor), 임시객체로의 자동 형 변환과 변환 연산자(Conversion Operator)) 1. 포인터 연산자 오버로딩 - 포인터를 기반으로 하는 연산자 모두를, 포인터 연산자라고 한다. - 그 중에서도 대표적인 포인터 연산자는 다음과 같다. a. -> : 포인터가 가리키는 객체의 맴버에 접근 b. * : 포인터가 가리키는 객체에 접근 - 이 두 연산자의 오버로딩은, 일반적인 연산자의 오버로딩과 크게 차이가 없다. ex ) #include using namespace std; class Number { pr..
[문과 코린이의 IT 기록장] C,C++ - 연산자 오버로딩 5 : 배열의 인덱스 연산자 오버로딩 (배열 클래스, const 함수를 이용한 오버로딩의 활용, 객체의 저장을 위한, 배열 클래스의 정의)
[문과 코린이의 IT 기록장] C,C++ - 연산자 오버로딩 4 : 배열의 인덱스 연산자 오버로딩 (배열 클래스, const 함수를 이용한 오버로딩의 활용, 객체의 저장을 위한, 배열 클래스의 정의) - 이번 포스팅에서는, 배열요소에 접근할 때 사용하는, [ ] 연산자를 오버로딩 하고자 한다. 1. 배열 클래스 - C, C++의 기본 배열은 경계검사를 하지 않는다는 단점을 가지고 있다. 따라서 컴파일, 실행 모두 무리없이 진행되는, 엉뚱한 코드가 만들어질 수 있다. int main(){ int arr[3] = {1,2,3}; cout