WorksheetsАбстракция, Голяма четворка, разделна компилация
Total questions: 10
Worksheet time: 6mins
Резултатът от абстракцията е:
Много хаус
Преизползваем код
Спагети код
Сложна архитектура
Голямата четворка включва какво?
Default Constructor
Move Constructor
Copy Constructor
Destructor
Destructor
Copy Constructor
Operator =
Param Constructor
Destructor
Default Constructor
Copy Constructor
Operator =
Move Operator =
Copy Constructor
Destructor
Default Constructor
Копиращият конструктор ______, а оператор = ______.
Създава обект;
Създава обект
Модифицира обект;
Създава обект
Модифицира обект;
Модифицира обект
Създава обект;
Модифицира обект
Какво ще покаже този фрагмент от код?
Operator =
Operator =
Operator =
Copy constructor
Copy constructor
Operator =
Copy constructor
Copy constructor
На какво е еквивалентно това?
lhs = rhs;
lhs.operator=(rhs);
lhs.T(rhs);
Тук копиращият конструктор е реализация на ______, а операторът = е реализация на ______.
Deep copy
Shallow copy
Deep copy
Deep copy
Shallow copy
Deep copy
Shallow copy
Shallow copy
Какъв е главният проблем, когато боравим с разделна компилация?
Много файлове
Абстракция
Трудности при свързването на header & cpp файлове
Редефиниране на код
Как се защитаваме от редефиниране на код?
Header guard
#pragma once
Като include-нем cpp файлът
Никак
Ако имате тази структура от hpp и cpp файлове, намирате ли проблем в тях?
Всичко си е 6 точки шефе!
Define guard-ът не е написан правилно
Дефинираме guard преди include-а на test.hpp
Библиотеката iostream ни пречи да include-нем нашият клас Test
Кое е правилно да се include-ва?
*.cpp
*.hpp
*.h
