ify"> ООП - це потужний "важіль", що дозволяє удосконалити процес програмування. З моменту винаходу комп'ютера методи програмування змінювалися багато разів і причому конкретним чином, але в основному, з метою адаптації до безперервного підвищення складності програм. Кожна віха в розвитку програмування характеризувалася створенням методів і засобів, що дозволяють програмісту писати все більш складні програми. З кожним кроком на цьому шляху винаходився новий метод, який, спираючись на найвдаліші елементи попередніх методів, вносив що щось своє, здійснюючи таким чином, прогрес в області програмування в цілому. Приблизно за такою схемою розвитку інструментарію для програмістів "дійшла справа" і до об'єктно-орієнтованого програмування. Його появі сприяв той факт, що реалізація багатьох проектів почала серйозно стопоритися, оскільки структурний підхід вже не справлявся з поставленими завданнями. Потрібен був новий спосіб подолання складності програм, і вирішенням цієї проблеми стало об'єктно-орієнтоване програмування. p align="justify"> Об'єктно-орієнтоване програмування увібрало в себе кращі ідеї структурного програмування і об'єднало їх з новими концепціями. В результаті з'явився більш досконалий спосіб організації програми. p align="justify"> Для підтримки принципів об'єктно-орієнтованого програмування ООП-мови, включаючи C + +, мають три характерні риси: инкапсуляцию, поліморфізм і успадкування.
Інкапсуляція - це механізм програмування, який пов'язує код і дані, якими він маніпулює, і при цьому охороняє їх від втручання ззовні і неправильного використання. В об'єктно-орієнтованої мови код і дані можна пов'язати таким чином, що буде створений автономний чорний ящик. Усередині цього ящика знаходяться всі необхідні дані і код. При такому зв'язуванні коду і даних створюється об'єкт. p align="justify"> Код, дані або обидві ці складові об'єкта можуть бути закритими всередині нього або відкритими. Закритий код або закриті дані відомі лише решті частини цього об'єкта і доступні тільки їй. Це означає, що до закритого коду або даних не може отримати доступ ніяка інша частина програми, існуюча поза цього об'єкта. Якщо код або дані є відкритими, до них можуть отримати доступ інші частини програми. p align="justify"> Основною одиницею інкапсуляції в C + + є клас. Клас визначає форму об'єкта. Він задає як дані, так і код, який буде оперувати цими даними. У C + + клас використовується для створення об'єктів. Об'єкти - це екземпляри класу. Таким чином, клас - це набір шаблонних елементів, які показують, як побудувати об'єкт. p align="justify"> Поліморфізм - це якість, яка дозволяє одному інтерфейсу отримувати доступ до цілого класу дій. Розглянемо стек - область пам'яті, що функціонує за принципом "останнім прийшов - першим обслужений". Припустимо якщо необхідно написати програму, для якої необхідно організувати три різних типи стека. Один...