
PA2 - 3 - Konstruktory, destruktory
Authored by Jan Matoušek
Computers
University
Used 2+ times

AI Actions
Add similar questions
Adjust reading levels
Convert to real-world scenario
Translate activity
More...
Content View
Student View
8 questions
Show all answers
1.
MULTIPLE CHOICE QUESTION
45 sec • 1 pt
Co vypíše následující program?
A
B
B
A
Výstup není definován
Program nepůjde zkompilovat
Answer explanation
Konstruktory se volají v pořadí definice proměnných.
Platí to:
- ve struktuře / třídě
- u lokálních proměnných v bloku kódu
- u globálních/statických proměnných v rámci jedné překladové jednotky.
Nelze zaručit vzájemné pořadí z různých překladových jednotek.
2.
MULTIPLE CHOICE QUESTION
30 sec • 1 pt
Co vypíše následující program?
A
B
AB
AB
A
B
Výstup není definován
Program nepůjde zkompilovat
Answer explanation
Konstruktory se volají v pořadí definic proměnných a struktur/tříd.
Ale! Definice není hotová, dokud neskončí středníkem (nebo čárkou u proměnných).
Zde tedy je hotová nejprve
- definice a,
- definice b,
- definice struktury AB.
A má to důsledky...
3.
MULTIPLE CHOICE QUESTION
30 sec • 1 pt
Co vypíše následující program?
~A
~B
~AB
~AB
~A
~B
~B
~A
~AB
~AB
~B
~A
Answer explanation
Destruktory se volají v přesně opačném pořadí než konstruktory.
Můžete si představit, že se při vzniku proměnných pokládají na fiktivní (*) zásobník jejich rodné listy (konstruktory) a při jejich odchodu se ze zásobníku čtou závěti (destruktory).
*) nikoliv reálný; pořadí volání určí kompilátor přímo
4.
MULTIPLE CHOICE QUESTION
30 sec • 1 pt
Co vypíše následující program?
42
0
Výstup není definován
Program nepůjde zkompilovat
Answer explanation
Vlastní definice jakéhokoliv konstruktoru zruší deklaraci výchozího konstruktoru dodanou kompilátorem i céčkovou inicializaci po prvcích X x = { 1, 2, ... }; (*)
Konstruktor A() tedy neexistuje.
*) Zápis A a = { 1, 2 }; bude volat konstruktor A::A(int, int).
5.
MULTIPLE CHOICE QUESTION
30 sec • 1 pt
Co vypíše následující program?
42
0
Výstup není definován
Program nepůjde zkompilovat
Answer explanation
Respektujeme pořadí volání konstruktorů, během zpracování A::A(42) přiřadíme do m_A hodnotu 42.
Poté, co je instance A vytvořena, hodnotu m_A (42) vypíšu.
6.
MULTIPLE CHOICE QUESTION
30 sec • 1 pt
Co vypíše následující program?
42
0
Výstup není definován
Program nepůjde zkompilovat
Answer explanation
Respektujeme pořadí volání konstruktorů. Nejprve se tedy zkonstruuje reference m_A.
Jenže...
Reference NEMÁ výchozí konstruktor!
Tedy už 2. krok selže!
Pozdější přiřazení už pracuje s existující referencí, skrz kterou přiřadí hodnotu z dodané reference a.
7.
MULTIPLE CHOICE QUESTION
30 sec • 1 pt
Co vypíše následující program?
42
0
Výstup není definován
Program nepůjde zkompilovat
Answer explanation
Member initializer list nám umožňuje říct, jaké konstruktory (a s jakými parametry) členských proměnných se budou volat.
Toto už bude fungovat správně, protože konstruktor reference z jiné reference existuje. (2. krok)
Konstruktory lze takto i delegovat, tedy za : volat jiný svůj konstruktor.
Access all questions and much more by creating a free account
Create resources
Host any resource
Get auto-graded reports

Continue with Google

Continue with Email

Continue with Classlink

Continue with Clever
or continue with

Microsoft
%20(1).png)
Apple
Others
Already have an account?
Similar Resources on Wayground
10 questions
AP2 PROCESSING
Quiz
•
University
11 questions
321-Quiz-08 - Names/Binding/Scope
Quiz
•
University
10 questions
What is Artificial Intelligence?
Quiz
•
12th Grade - University
10 questions
PDS - 04225 Pointers & Dynamic Arrays - Chapter 8
Quiz
•
University - Professi...
10 questions
CHAPTER 1: COMPUTER SECURITY REVIEW
Quiz
•
University
10 questions
Bilgisayarın Temel Birimleri
Quiz
•
9th Grade - University
12 questions
ASK Tingkatan 1: 2.2.2 Format Imej pada Fail yang Sama
Quiz
•
12th Grade - University
13 questions
Chap 1: What is a program made of?
Quiz
•
University
Popular Resources on Wayground
8 questions
Spartan Way - Classroom Responsible
Quiz
•
9th - 12th Grade
15 questions
Fractions on a Number Line
Quiz
•
3rd Grade
14 questions
Boundaries & Healthy Relationships
Lesson
•
6th - 8th Grade
20 questions
Equivalent Fractions
Quiz
•
3rd Grade
3 questions
Integrity and Your Health
Lesson
•
6th - 8th Grade
25 questions
Multiplication Facts
Quiz
•
5th Grade
9 questions
FOREST Perception
Lesson
•
KG
20 questions
Main Idea and Details
Quiz
•
5th Grade
Discover more resources for Computers
20 questions
Disney Trivia
Quiz
•
University
7 questions
Fragments, Run-ons, and Complete Sentences
Interactive video
•
4th Grade - University
7 questions
Renewable and Nonrenewable Resources
Interactive video
•
4th Grade - University
10 questions
DNA Structure and Replication: Crash Course Biology
Interactive video
•
11th Grade - University
7 questions
Force and Motion
Interactive video
•
4th Grade - University
20 questions
Implicit vs. Explicit
Quiz
•
6th Grade - University
14 questions
Ch.3_TEACHER-led
Quiz
•
University
7 questions
Comparing Fractions
Interactive video
•
1st Grade - University