Deck 14: Exception Handling
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Question
Unlock Deck
Sign up to unlock the cards in this deck!
Unlock Deck
Unlock Deck
1/50
Play
Full screen (f)
Deck 14: Exception Handling
1
The heading of a try block can contain ellipses in place of a parameter.
False
2
Which of the following blocks is designed to catch any type of exception?
A) catch(){ }
B) catch(...){ }
C) catch(*){ }
D) catch(exception){ }
A) catch(){ }
B) catch(...){ }
C) catch(*){ }
D) catch(exception){ }
B
3
The order of the catch blocks does not affect the program.
False
4
A(n) ____ is an occurrence of an undesirable situation that can be detected during program execution.
A) crash
B) exception
C) misfire
D) bug
A) crash
B) exception
C) misfire
D) bug
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
5
One of the typical ways of dealing with exceptions is to use an if statement.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
6
An object that is being thrown cannot be an anonymous object.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
7
If no exception is thrown in a try block, all catch blocks associated with that try block are ignored.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
8
The try block is followed by one or more ____ blocks.
A) throw
B) finally
C) do
D) catch
A) throw
B) finally
C) do
D) catch
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
9
If the catch block with an ellipses (in the heading) is needed, then it should be the first catch block in a sequence of try/catch blocks.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
10
Which of the following is a valid C++ statement?
A) assert(0 = divisor);
B) assert(divisor != 0);
C) assert(divisor 0);
D) assert(divisor is 0);
A) assert(0 = divisor);
B) assert(divisor != 0);
C) assert(divisor 0);
D) assert(divisor is 0);
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
11
C++ provides all the exception classes you will ever need.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
12
Which of the following statements throws a valid exception in C++?
A) throw.function();
B) throw 2;
C) throws str;
D) 4 throw;
A) throw.function();
B) throw 2;
C) throws str;
D) 4 throw;
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
13
The code to handle exceptions depends on the type of application you develop.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
14
A catch block specifies the type of exception it can catch and immediately terminates the program.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
15
When division by zero occurs and the problem is not addressed, the program crashes with an error message that is ____ dependent.
A) code
B) computer
C) platform
D) IDE
A) code
B) computer
C) platform
D) IDE
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
16
The function ____ can check whether an expression meets the required conditions; if the conditions are not met, it terminates the program.
A) check
B) look
C) assert
D) what
A) check
B) look
C) assert
D) what
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
17
In C++, any class can be considered an exception class.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
18
A catch block can have, at most, ____ catch block parameter(s).
A) zero
B) one
C) two
D) three
A) zero
B) one
C) two
D) three
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
19
To use the assert function in your program, you should include the statement ____.
A) #include
B) #include
C) #include
D) #include
A) #include
B) #include
C) #include
D) #include
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
20
The statements that may generate an exception are placed in a ____ block.
A) throw
B) finally
C) try
D) catch
A) throw
B) finally
C) try
D) catch
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
21
The class ____ is designed to deal with illegal arguments used in a function call.
A) illegal_argument
B) bad_argument
C) invalid_call
D) invalid_argument
A) illegal_argument
B) bad_argument
C) invalid_call
D) invalid_argument
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
22
If you want to include members in your exception class, you typically include the function ____.
A) that
B) this
C) log
D) what
A) that
B) this
C) log
D) what
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
23
The class ____ is the base of the classes designed to handle exceptions.
A) class
B) exception
C) logic_error
D) runtime_error
A) class
B) exception
C) logic_error
D) runtime_error
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
24
The ____________________ of the catch block parameter specifies the type of exception that the catch block can catch.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
25
The function ____ returns a string containing an appropriate message.
A) where
B) what
C) when
D) log
A) where
B) what
C) when
D) log
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
26
Which of the following statements creates a new exception class?
A) class myClass {};
B) class myClass {} implements exception;
C) class myExceptionClass {} extends exception;
D) class myExceptionClass {} throws exception;
A) class myClass {};
B) class myClass {} implements exception;
C) class myExceptionClass {} extends exception;
D) class myExceptionClass {} throws exception;
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
27
A(n) ____________________ block specifies the type of exception it can catch and contains an exception handler.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
28
In C++, throw is a(n) ____________________ word.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
29
The logic_error and runtime_error classes are defined in the header file ____.
A) stdex
B) stdlib
C) stdexcept
D) exception
A) stdex
B) stdlib
C) stdexcept
D) exception
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
30
Suppose you have written a program that inputs data from a file. If the input file does not exist when the program executes, then you should choose which option?
A) Terminate the program.
B) Include code in the program to recover from the exception.
C) Log the error and continue.
D) Include code in the header file.
A) Terminate the program.
B) Include code in the program to recover from the exception.
C) Log the error and continue.
D) Include code in the header file.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
31
If, during program execution, division by ____________________ occurs with integer values and is not addressed by the program, the program might terminate with an error message or might simply hang.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
32
When an exception is thrown, if the program does not handle the exception, then the function ____ is called to terminate the program.
A) log
B) what
C) terminate
D) close
A) log
B) what
C) terminate
D) close
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
33
To deal with logical errors in a program, such as a string subscript out of range or an invalid argument to a function call, several classes are derived from the class ____.
A) logic_error
B) logic_exception
C) runtime_error
D) exception
A) logic_error
B) logic_exception
C) runtime_error
D) exception
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
34
The class ____ is designed to deal with errors that can be detected only during program execution.
A) error
B) exception
C) runtime_error
D) logic_error
A) error
B) exception
C) runtime_error
D) logic_error
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
35
Throwing an exception is typically done using the ____________________ statement.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
36
Which of the following options should you choose when an exception occurs in the program that analyzes an airline's ticketing transactions?
A) Terminate the program.
B) Include code in the program to recover from the exception.
C) Log the error and continue.
D) Include code in the header file.
A) Terminate the program.
B) Include code in the program to recover from the exception.
C) Log the error and continue.
D) Include code in the header file.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
37
In a sequence of try/catch blocks, the last catch block of that sequence should be ____.
A) catch(...){ }
B) catch(int x){ }
C) catch(str){ }
D) catch(exception){}
A) catch(...){ }
B) catch(int x){ }
C) catch(str){ }
D) catch(exception){}
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
38
The general syntax to rethrow an exception caught by a catch block is: ____ (in this case, the same exception is rethrown).
A) rethrow;
B) throw;
C) rethrow exception;
D) throw exception;
A) rethrow;
B) throw;
C) rethrow exception;
D) throw exception;
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
39
When an exception is thrown in a function, the function-call stack is ____ so that the exception can be caught in the next try/catch block.
A) destroyed
B) allocated
C) unbound
D) unwound
A) destroyed
B) allocated
C) unbound
D) unwound
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
40
Which of the following classes is derived from the class runtime_error?
A) bad_alloc
B) out_of_range
C) overflow_error
D) length_error
A) bad_alloc
B) out_of_range
C) overflow_error
D) length_error
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
41
When an exception is thrown in a function, the function can do the following: ____________________; partially process the exception and throw the same exception or a new exception; or throw a new exception.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
42
When an exception occurs in a program, the programmer usually has three choices: ____________________, include code in the program to recover from the exception, or log the error and continue.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
43
When an exception occurs in a try block, control immediately passes to one of the ____________________ blocks.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
44
The class ____________________ deals with the string subscript out of range error.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
45
The class ____________________ contains the function what.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
46
If the operator new cannot allocate memory space, this operator throws a(n) ____________________ exception.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
47
If a length greater than the maximum allowed for a string object is used, the class ____________________ deals with the error that occurs.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
48
The string concatenation operator is represented by the ____________________ symbol.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
49
If the operator new cannot allocate memory space, this operator throws a(n) ____________________ exception.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
50
All derived classes of the class exception override the function ____________________ to issue their own error messages.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck