본문 바로가기

객체2

객체 지향 프로그래밍 : Object-Oriented Programming(OOP) 객체 지향 프로그래밍(Object Oriented Programming:OOP)이란? 기존의 절차 지향형 프로그래밍 방식에서 벗어나 프로그램을 객체라는 기본 단위로 나누고 추상화하여 이 객체들의 상호작용으로 서술하는 프로그램 설계 방법론이자 개념의 일종 클래스 (Class) 어떤 문제를 해결하기 위한 데이터를 만들기 위해 현실 사물을 추상화를 거쳐 객체의 속성과 행위를 변수와 메서드로 정의한 것 객체를 정의하는 틀, 혹은 설계도 객체 (Object) 속성과 행위를 가진 객체 지향 프로그램의 기본단위 클래스에 의해 정의되어 프로그램이 실행되는 동안 실존하는 실체 혹은 인스턴스 추상화 (Abstraction) 현실의 사물들을 객체라 생각하고 상태, 행위 등 객체의 특징점을 선별하여 프로그래밍하는 것 캡슐화 .. 2019. 10. 22.
[Effective C++]항목 17 : new로 생성한 객체를 스마트 포인터에 저장하는 코드는 별도의 한 문장으로 만들자. 요약 new로 생성한 객체를 스마트 포인터로 넣는 코드는 별도의 한 문장으로 만들자! 아니면 예외가 발생될 때 디버깅하기 힘든 자원 누출이 초래될수 있다.! 쉽게 말해서 다음과 같은 코드에서 processWidget(std::tr1::shared_ptr(new Widget), priority()); 컴파일러는 priority를 호출하고 new Widget을 실행하고 tr1::shared_ptr 생성자를 호출 하는 3가지 일을 하는데 컴파일러에 따라 위 순서가 뒤죽박죽 될 수 있으니 std::tr1::shared_ptr pw(new Widget); //new로 생성한 객체를 스마트 포인터에 담는 코드를 하나의 독립적인 문장으로 만든다. processWidget(pw, priority); 위와 같이 명시적으.. 2019. 8. 6.