Deck 12: Pointers, Classes, Virtual Functions, Abstract Classes, and Lists
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 12: Pointers, Classes, Virtual Functions, Abstract Classes, and Lists
1
In C++,the dot operator has a lower precedence than the dereferencing operator.
False
2
What is the output of the following code? int *p;
Int x;
X = 76;
P = &x;
*p = 43;
Cout << x << "," << *p << endl;
A) 76, 76
B) 76, 43
C) 43, 76
D) 43, 43
Int x;
X = 76;
P = &x;
*p = 43;
Cout << x << "," << *p << endl;
A) 76, 76
B) 76, 43
C) 43, 76
D) 43, 43
D
3
What is the output of the following code? int *p;
Int x;
X = 12;
P = &x;
Cout << x << ",";
*p = 81;
Cout << *p << endl;
A) 12, 12
B) 12, 81
C) 81, 12
D) 81, 81
Int x;
X = 12;
P = &x;
Cout << x << ",";
*p = 81;
Cout << *p << endl;
A) 12, 12
B) 12, 81
C) 81, 12
D) 81, 81
B
4
In the statement
int* p,q;
p and q are pointer variables.
int* p,q;
p and q are pointer variables.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
5
The dereferencing operator is also known as the indirection operator and refers to the object to which its operand points.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
6
Variables that are created during program execution are called static variables.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
7
In C++,you declare a pointer variable by using the ____ symbol.
A) *
B) &
C) #
D) @
A) *
B) &
C) #
D) @
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
8
In C++,pointer variables are declared using the reserved word pointer.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
9
Which of the following can be used to initialize a pointer variable?
A) 1
B) NULL
C) "0"
D) '0'
A) 1
B) NULL
C) "0"
D) '0'
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
10
If p is a pointer variable,the statement p = p + 1; is valid in C++.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
11
A pointer variable is a variable whose content is a memory address.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
12
The code int *p; declares p to be a(n)____ variable.
A) new
B) num
C) pointer
D) address
A) new
B) num
C) pointer
D) address
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
13
The C++ operator ____ is used to destroy dynamic variables.
A) destroy
B) delete
C) *
D) ~
A) destroy
B) delete
C) *
D) ~
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
14
What is the output of the following statements? int x = 33;
Int *q;
Q = &x;
Cout << *q << endl;
A) NULL
B) 0
C) 3
D) 33
Int *q;
Q = &x;
Cout << *q << endl;
A) NULL
B) 0
C) 3
D) 33
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
15
What is the value of x after the following statements execute? int x = 25;
Int *p;
P = &x;
*p = 46;
A) NULL
B) 0
C) 25
D) 46
Int *p;
P = &x;
*p = 46;
A) NULL
B) 0
C) 25
D) 46
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
16
A list is a collection of elements of the same type.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
17
In C++,____ is called the address of operator.
A) &
B) *
C) #
D) ->
A) &
B) *
C) #
D) ->
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
18
A memory leak is an unused memory space that cannot be allocated.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
19
The C++ operator ____ is used to create dynamic variables.
A) dynamic
B) new
C) virtual
D) dereferencing
A) dynamic
B) new
C) virtual
D) dereferencing
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
20
Given the declaration
int *p;
The statement
p = new int[50];
dynamically allocates an array of 50 components of type int and p contains the base address of the array.
int *p;
The statement
p = new int[50];
dynamically allocates an array of 50 components of type int and p contains the base address of the array.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
21
The ____ operator can be used to return the address of a private data member of a class.
A) dereferencing
B) destructor
C) address of
D) member access
A) dereferencing
B) destructor
C) address of
D) member access
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
22
Consider the following statement: ptrMemberVarType objectThree(objectOne);
The values of the member variables of objectOne are being copied into the corresponding member variables of objectThree.This initialization is called the ____.
A) member-wise assignment
B) default assignment
C) member-wise initialization
D) default initialization
The values of the member variables of objectOne are being copied into the corresponding member variables of objectThree.This initialization is called the ____.
A) member-wise assignment
B) default assignment
C) member-wise initialization
D) default initialization
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
23
Run-time binding is also known as ____ binding.
A) static
B) shallow
C) dynamic
D) deep
A) static
B) shallow
C) dynamic
D) deep
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
24
A(n)____ is a collection of distinct elements of the same type.
A) class
B) ordered set
C) pointer
D) list
A) class
B) ordered set
C) pointer
D) list
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
25
A class ____ automatically executes whenever a class object goes out of scope.
A) constructor
B) destructor
C) pointer
D) exception
A) constructor
B) destructor
C) pointer
D) exception
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
26
Which of the following operations is allowed on pointer variables?
A) exp
B) %
C) ==
D) /
A) exp
B) %
C) ==
D) /
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
27
In a(n)____ copy,two or more pointers have their own data.
A) shallow
B) deep
C) static
D) dynamic
A) shallow
B) deep
C) static
D) dynamic
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
28
The statement that declares board to be an array of six pointers wherein each pointer is of type int is: int ____________________;
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
29
Which of the following arithmetic operations is allowed on pointer variables?
A) increment
B) modulus
C) multiplication
D) division
A) increment
B) modulus
C) multiplication
D) division
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
30
An array created during the execution of a program is called a(n)____ array.
A) list
B) static
C) execution
D) dynamic
A) list
B) static
C) execution
D) dynamic
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
31
Given the declaration int *a;,the statement a = new int[50]; dynamically allocates an array of 50 components of the type ____.
A) int
B) int*
C) pointer
D) address
A) int
B) int*
C) pointer
D) address
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
32
Given the statement double *p;,the statement p++; will increment the value of p by ____ byte(s).
A) one
B) two
C) four
D) eight
A) one
B) two
C) four
D) eight
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
33
Consider the following statements:
void pointerParameters(int* &p,double *q)
{
.
.
.
}
In the function pointerParameters,the parameter q is a(n)____________________ parameter.
void pointerParameters(int* &p,double *q)
{
.
.
.
}
In the function pointerParameters,the parameter q is a(n)____________________ parameter.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
34
In a ____ copy,two or more pointers of the same type point to the same memory.
A) static
B) shallow
C) dynamic
D) deep
A) static
B) shallow
C) dynamic
D) deep
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
35
Which of the following would be appropriate syntax for the heading of a copy constructor for a class called rulerType?
A) rulerType(int inches, int centimeters)
B) rulerType()
C) rulerType(const rulerType& myRuler)
D) copy rulerType(int inches, int centimeters)
A) rulerType(int inches, int centimeters)
B) rulerType()
C) rulerType(const rulerType& myRuler)
D) copy rulerType(int inches, int centimeters)
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
36
The ____ constructor is executed when an object is declared and initialized by using the value of another object.
A) default
B) copy
C) struct
D) class
A) default
B) copy
C) struct
D) class
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
37
Consider the following statements:
void pointerParameters(int* &p,double *q)
{
.
.
.
}
In the function pointerParameters,the parameter p is a(n)____________________ parameter.
void pointerParameters(int* &p,double *q)
{
.
.
.
}
In the function pointerParameters,the parameter p is a(n)____________________ parameter.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
38
The statement int *p; is equivalent to int * p;,which is also equivalent to the statement ____________________.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
39
Consider the following declaration of a struct:
struct studentType
{
char name[26];
double gpa;
int sID;
char grade;
};
studentType student;
studentType *studentPtr;
The statement (*studentPtr).gpa = 2.5; is equivalent to ____________________ = 2.5;.
struct studentType
{
char name[26];
double gpa;
int sID;
char grade;
};
studentType student;
studentType *studentPtr;
The statement (*studentPtr).gpa = 2.5; is equivalent to ____________________ = 2.5;.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
40
In ____ binding,the necessary code to call a specific function is generated by the compiler.
A) static
B) dynamic
C) shallow
D) deep
A) static
B) dynamic
C) shallow
D) deep
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
41
The ____________________ of a base class automatically makes the destructor of a derived class virtual.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
42
Consider the following statements:
int x;
int &y = x;
The second statement declares y to be a(n)____________________ of x.
int x;
int &y = x;
The second statement declares y to be a(n)____________________ of x.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
43
The copy constructor automatically executes when,as a parameter,an object is passed by ____________________.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
44
Once a class contains one or more pure virtual functions,then that class is called a(n)____________________ class.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
45
For classes with pointer member variables,you should include the copy constructor and the ____________________ in the class.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
46
The statement that declares board to be a pointer to a pointer is: int ____________________;
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
47
The binding of virtual functions occurs at program ____________________ time.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
48
The ____________________ of a list is the number of elements in the list.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
49
Consider the following statements:
class shape
{
public:
virtual void draw()= 0;
virtual void move(double x,double y)= 0;
.
.
.
};
The code above is an example of a(n)____________________ class definition.
class shape
{
public:
virtual void draw()= 0;
virtual void move(double x,double y)= 0;
.
.
.
};
The code above is an example of a(n)____________________ class definition.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck
50
An object of the base class type cannot be passed to a(n)____________________ parameter of the derived class type.
Unlock Deck
Unlock for access to all 50 flashcards in this deck.
Unlock Deck
k this deck