SlideShare una empresa de Scribd logo
1 de 34
Бублик Володимир Васильович Програмування - 2 Лекція  8 . Об'єктне програмування. Параметризовані класи  Лекції для студентів 2 курсу
Повторення ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Типізація векторів ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Параметризований вектор ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Діаграми векторів ,[object Object],[object Object]
Порівняння типів векторів ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Узагальнена операція ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Статичний контроль типів ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Заголовний файл (1) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Заголовний файл (2) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Заголовний файл (3) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Заголовний файл (4) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Заголовний файл (5) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Моделі компіляції ,[object Object],[object Object],[object Object]
Компіляція ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Компіляція ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Вправа ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Діаграма класів
Повторення. Різнотипні масиви // Масив елементів типу  Point ArrayOfPoint ::ArrayOfPoint (size_t sz): _size(sz), _pElem ( new  Point[_size]) { return ; } Point& ArrayOfPoint:: operator [] (size_t index) { return  _pElem[index]; } // Масив елементів типу char ArrayOfChar ::ArrayOfChar (size_t sz): _size(sz), _pElem ( new   char [_size]) { return ; } char & ArrayOfChar:: operator [] (size_t index) { return  _pElem[index]; } // Масив елементів типу int ArrayOfInt ::ArrayOfInt (size_t sz): _size(sz), _pElem ( new   int [_size]) { return ; } int & ArrayOfInt:: operator [] (size_t index) { return  _pElem[index]; } Масив точок Масив символів Масив цілих чисел Фрагменти реалізації масивів елементів різних типів
Визначення типів ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Визначення типів ,[object Object],[object Object]
Параметризація типовим параметром ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Замовчувані значення типових параметрів ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Діаграми масивів
Порівняння ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Поліпараметризовані класи
Масив з двома параметрами ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Реалізація ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Вкладені (параметризовані) типи ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Вкладені (параметризовані) типи ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Діаграми вкладених типів
Клонування вкладених типів ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Реалізація вкладених типів ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Висновки ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]

Más contenido relacionado

La actualidad más candente

05 Operations And Utilities
05 Operations And Utilities05 Operations And Utilities
05 Operations And Utilitiesolegapster
 
"Unit testing in AngularJS" Виктор Зозуляк
"Unit testing in AngularJS" Виктор Зозуляк"Unit testing in AngularJS" Виктор Зозуляк
"Unit testing in AngularJS" Виктор ЗозулякFwdays
 
Advanced C#. Part 2
Advanced C#. Part 2Advanced C#. Part 2
Advanced C#. Part 2eleksdev
 
09 Static Polymorphism
09 Static Polymorphism09 Static Polymorphism
09 Static Polymorphismolegapster
 
урок 19 цикли Складання програм
урок 19 цикли Складання програмурок 19 цикли Складання програм
урок 19 цикли Складання програмHelen Pat
 
07 Localisation
07 Localisation07 Localisation
07 Localisationolegapster
 
Phpunit модульне тестування
Phpunit модульне тестуванняPhpunit модульне тестування
Phpunit модульне тестуванняVladimir Maslechkin
 
Lecture 13 Local Optimization on Mobile Devices
Lecture 13 Local Optimization on Mobile DevicesLecture 13 Local Optimization on Mobile Devices
Lecture 13 Local Optimization on Mobile DevicesMaksym Davydov
 
урок 12 вирази мова Паскаль
урок 12 вирази  мова Паскальурок 12 вирази  мова Паскаль
урок 12 вирази мова ПаскальHelen Pata
 
програмування на мові паскаль
програмування на мові паскаль програмування на мові паскаль
програмування на мові паскаль Helen Pata
 
Net Framework and C# Module 3 4. Inheritance, Abstractions
Net Framework and C# Module 3 4. Inheritance, AbstractionsNet Framework and C# Module 3 4. Inheritance, Abstractions
Net Framework and C# Module 3 4. Inheritance, AbstractionsAndrii Hladkyi
 

La actualidad más candente (19)

JavaScript. Lectures. part 1. basis
JavaScript. Lectures. part 1. basisJavaScript. Lectures. part 1. basis
JavaScript. Lectures. part 1. basis
 
Coding for Future in Lutsk. JavaScript. Part 6
Coding for Future in Lutsk. JavaScript. Part 6Coding for Future in Lutsk. JavaScript. Part 6
Coding for Future in Lutsk. JavaScript. Part 6
 
05 Operations And Utilities
05 Operations And Utilities05 Operations And Utilities
05 Operations And Utilities
 
"Unit testing in AngularJS" Виктор Зозуляк
"Unit testing in AngularJS" Виктор Зозуляк"Unit testing in AngularJS" Виктор Зозуляк
"Unit testing in AngularJS" Виктор Зозуляк
 
Advanced C#. Part 2
Advanced C#. Part 2Advanced C#. Part 2
Advanced C#. Part 2
 
09 Static Polymorphism
09 Static Polymorphism09 Static Polymorphism
09 Static Polymorphism
 
Coding for Future in Lutsk. JavaScript. Part 3
Coding for Future in Lutsk. JavaScript. Part 3Coding for Future in Lutsk. JavaScript. Part 3
Coding for Future in Lutsk. JavaScript. Part 3
 
урок 19 цикли Складання програм
урок 19 цикли Складання програмурок 19 цикли Складання програм
урок 19 цикли Складання програм
 
1
11
1
 
04 Operators
04 Operators04 Operators
04 Operators
 
07 Localisation
07 Localisation07 Localisation
07 Localisation
 
Phpunit модульне тестування
Phpunit модульне тестуванняPhpunit модульне тестування
Phpunit модульне тестування
 
Lecture 07 swift
Lecture 07 swiftLecture 07 swift
Lecture 07 swift
 
Функції в C++
Функції в C++Функції в C++
Функції в C++
 
Lecture 13 Local Optimization on Mobile Devices
Lecture 13 Local Optimization on Mobile DevicesLecture 13 Local Optimization on Mobile Devices
Lecture 13 Local Optimization on Mobile Devices
 
Phpunit
PhpunitPhpunit
Phpunit
 
урок 12 вирази мова Паскаль
урок 12 вирази  мова Паскальурок 12 вирази  мова Паскаль
урок 12 вирази мова Паскаль
 
програмування на мові паскаль
програмування на мові паскаль програмування на мові паскаль
програмування на мові паскаль
 
Net Framework and C# Module 3 4. Inheritance, Abstractions
Net Framework and C# Module 3 4. Inheritance, AbstractionsNet Framework and C# Module 3 4. Inheritance, Abstractions
Net Framework and C# Module 3 4. Inheritance, Abstractions
 

Destacado

10 Polymorphism
10 Polymorphism10 Polymorphism
10 Polymorphismolegapster
 
11 Iterated Containers
11 Iterated Containers11 Iterated Containers
11 Iterated Containersolegapster
 
Seo for Wordpress - Wordcamp Montreal 2012
Seo for Wordpress - Wordcamp Montreal 2012Seo for Wordpress - Wordcamp Montreal 2012
Seo for Wordpress - Wordcamp Montreal 2012CT Moore
 
03 Right Of Access
03 Right Of Access03 Right Of Access
03 Right Of Accessolegapster
 
Corporate Social Media Strategy
Corporate Social Media StrategyCorporate Social Media Strategy
Corporate Social Media StrategyCT Moore
 
Social Media Marketing 101
Social Media Marketing 101Social Media Marketing 101
Social Media Marketing 101CT Moore
 
WP-MU 101: How to Install and Avoid Common Mistakes
WP-MU 101: How to Install and Avoid Common MistakesWP-MU 101: How to Install and Avoid Common Mistakes
WP-MU 101: How to Install and Avoid Common MistakesCT Moore
 
Social Media & Personal Branding for Career Advancement
Social Media & Personal Branding for Career AdvancementSocial Media & Personal Branding for Career Advancement
Social Media & Personal Branding for Career AdvancementCT Moore
 
02 Arithmetic Data Types
02 Arithmetic Data Types02 Arithmetic Data Types
02 Arithmetic Data Typesolegapster
 
Podcamp montreal 2010 search & social
Podcamp montreal 2010 search & socialPodcamp montreal 2010 search & social
Podcamp montreal 2010 search & socialCT Moore
 
Syncing SEO & Content Strategies
Syncing SEO & Content StrategiesSyncing SEO & Content Strategies
Syncing SEO & Content StrategiesCT Moore
 

Destacado (12)

10 Polymorphism
10 Polymorphism10 Polymorphism
10 Polymorphism
 
05 Arrays
05 Arrays05 Arrays
05 Arrays
 
11 Iterated Containers
11 Iterated Containers11 Iterated Containers
11 Iterated Containers
 
Seo for Wordpress - Wordcamp Montreal 2012
Seo for Wordpress - Wordcamp Montreal 2012Seo for Wordpress - Wordcamp Montreal 2012
Seo for Wordpress - Wordcamp Montreal 2012
 
03 Right Of Access
03 Right Of Access03 Right Of Access
03 Right Of Access
 
Corporate Social Media Strategy
Corporate Social Media StrategyCorporate Social Media Strategy
Corporate Social Media Strategy
 
Social Media Marketing 101
Social Media Marketing 101Social Media Marketing 101
Social Media Marketing 101
 
WP-MU 101: How to Install and Avoid Common Mistakes
WP-MU 101: How to Install and Avoid Common MistakesWP-MU 101: How to Install and Avoid Common Mistakes
WP-MU 101: How to Install and Avoid Common Mistakes
 
Social Media & Personal Branding for Career Advancement
Social Media & Personal Branding for Career AdvancementSocial Media & Personal Branding for Career Advancement
Social Media & Personal Branding for Career Advancement
 
02 Arithmetic Data Types
02 Arithmetic Data Types02 Arithmetic Data Types
02 Arithmetic Data Types
 
Podcamp montreal 2010 search & social
Podcamp montreal 2010 search & socialPodcamp montreal 2010 search & social
Podcamp montreal 2010 search & social
 
Syncing SEO & Content Strategies
Syncing SEO & Content StrategiesSyncing SEO & Content Strategies
Syncing SEO & Content Strategies
 

Similar a 08 Templates

Using Metatags in Flex Developing
Using Metatags in Flex DevelopingUsing Metatags in Flex Developing
Using Metatags in Flex DevelopingRoman Shuper
 
Знайомство з програмуванням на мові C++
Знайомство з програмуванням на мові C++Знайомство з програмуванням на мові C++
Знайомство з програмуванням на мові C++Alexander Kuzmenko
 
лаб. роб. №2 обєкти та сервіси що ними надаються
лаб. роб. №2   обєкти та сервіси що ними надаютьсялаб. роб. №2   обєкти та сервіси що ними надаються
лаб. роб. №2 обєкти та сервіси що ними надаютьсяcit-cit
 
Основи алгоритмізації та програмування. Лекція 1
Основи алгоритмізації та програмування. Лекція 1Основи алгоритмізації та програмування. Лекція 1
Основи алгоритмізації та програмування. Лекція 1Dmitry Chabanenko
 
Лекція №12 Передача параметрів у функцію.pptx
Лекція №12 Передача параметрів у функцію.pptxЛекція №12 Передача параметрів у функцію.pptx
Лекція №12 Передача параметрів у функцію.pptxssuserf57884
 
09 Object And Class Hierarchy
09 Object And Class Hierarchy09 Object And Class Hierarchy
09 Object And Class Hierarchyolegapster
 
опорні схеми
опорні схемиопорні схеми
опорні схемиIrina Tabanets
 
змінна введення виведення даних
змінна введення виведення данихзмінна введення виведення даних
змінна введення виведення данихМикола Мізюк
 
V24 com to_net
V24 com to_netV24 com to_net
V24 com to_netRingonoki
 
Advanced c sharp part 3
Advanced c sharp part 3Advanced c sharp part 3
Advanced c sharp part 3eleksdev
 
Net framework і c# module 8
Net framework і c# module 8Net framework і c# module 8
Net framework і c# module 8Andrii Hladkyi
 

Similar a 08 Templates (20)

Design patterns part 1
Design patterns part 1Design patterns part 1
Design patterns part 1
 
Using Metatags in Flex Developing
Using Metatags in Flex DevelopingUsing Metatags in Flex Developing
Using Metatags in Flex Developing
 
cpp-2013 #20 Best practices
cpp-2013 #20 Best practicescpp-2013 #20 Best practices
cpp-2013 #20 Best practices
 
tsql
tsqltsql
tsql
 
Знайомство з програмуванням на мові C++
Знайомство з програмуванням на мові C++Знайомство з програмуванням на мові C++
Знайомство з програмуванням на мові C++
 
лаб. роб. №2 обєкти та сервіси що ними надаються
лаб. роб. №2   обєкти та сервіси що ними надаютьсялаб. роб. №2   обєкти та сервіси що ними надаються
лаб. роб. №2 обєкти та сервіси що ними надаються
 
Основи алгоритмізації та програмування. Лекція 1
Основи алгоритмізації та програмування. Лекція 1Основи алгоритмізації та програмування. Лекція 1
Основи алгоритмізації та програмування. Лекція 1
 
Twig in symfony
Twig in symfonyTwig in symfony
Twig in symfony
 
Лекція №12 Передача параметрів у функцію.pptx
Лекція №12 Передача параметрів у функцію.pptxЛекція №12 Передача параметрів у функцію.pptx
Лекція №12 Передача параметрів у функцію.pptx
 
09 Object And Class Hierarchy
09 Object And Class Hierarchy09 Object And Class Hierarchy
09 Object And Class Hierarchy
 
опорні схеми
опорні схемиопорні схеми
опорні схеми
 
змінна введення виведення даних
змінна введення виведення данихзмінна введення виведення даних
змінна введення виведення даних
 
Урок 44. Цикл з післяумовою
Урок 44. Цикл з післяумовоюУрок 44. Цикл з післяумовою
Урок 44. Цикл з післяумовою
 
9 13
9 139 13
9 13
 
V24 com to_net
V24 com to_netV24 com to_net
V24 com to_net
 
Advanced c sharp part 3
Advanced c sharp part 3Advanced c sharp part 3
Advanced c sharp part 3
 
7_1611.pptx
7_1611.pptx7_1611.pptx
7_1611.pptx
 
Design patterns part 2
Design patterns part 2Design patterns part 2
Design patterns part 2
 
Clean code (UA)
Clean code (UA)Clean code (UA)
Clean code (UA)
 
Net framework і c# module 8
Net framework і c# module 8Net framework і c# module 8
Net framework і c# module 8
 

08 Templates

  • 1. Бублик Володимир Васильович Програмування - 2 Лекція 8 . Об'єктне програмування. Параметризовані класи Лекції для студентів 2 курсу
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 19. Повторення. Різнотипні масиви // Масив елементів типу Point ArrayOfPoint ::ArrayOfPoint (size_t sz): _size(sz), _pElem ( new Point[_size]) { return ; } Point& ArrayOfPoint:: operator [] (size_t index) { return _pElem[index]; } // Масив елементів типу char ArrayOfChar ::ArrayOfChar (size_t sz): _size(sz), _pElem ( new char [_size]) { return ; } char & ArrayOfChar:: operator [] (size_t index) { return _pElem[index]; } // Масив елементів типу int ArrayOfInt ::ArrayOfInt (size_t sz): _size(sz), _pElem ( new int [_size]) { return ; } int & ArrayOfInt:: operator [] (size_t index) { return _pElem[index]; } Масив точок Масив символів Масив цілих чисел Фрагменти реалізації масивів елементів різних типів
  • 20.
  • 21.
  • 22.
  • 23.
  • 25.
  • 27.
  • 28.
  • 29.
  • 30.
  • 32.
  • 33.
  • 34.