Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Multiple Choice Multiple Choice Section 2.1 - 2.2 Introduction to Classes Here is the start of a class declaration: class foo { public: void x(foo

Multiple Choice

Multiple Choice Section 2.1 - 2.2 Introduction to Classes
  1. Here is the start of a class declaration:
     class foo { public: void x(foo f); void y(const foo f); void z(foo f) const; ... 
    Which of the three member functions can alter the PRIVATE member variables of the foo object that activates the function?
    • A. Only x can alter the private member variables of the object that activates the function.
    • B. Only y can alter the private member variables of the object that activates the function.
    • C. Only z can alter the private member variables of the object that activates the function.
    • D. Two of the functions can alter the private member variables of the object that activates the function.
    • E. All of the functions can alter the private member variables of the object that activates the function.

  2. Is it possible for a member function of a class to activate another member function of the same class?
    • A. No.
    • B. Yes, but only public member functions.
    • C. Yes, but only private member functions.
    • D. Yes, both public and private member functions can be activated within another member function.

  3. Can two classes contain member functions with the same name?
    • A. No.
    • B. Yes, but only if the two classes have the same name.
    • C. Yes, but only if the main program does not declare both kinds
    • D. Yes, this is always allowed.

  4. What is the common pattern of class definitions that is used in Chapter 2?
    • A. Member functions and member variables are both private.
    • B. Member functions are private, and member variables are public.
    • C. Member functions are public, and member variables are private.
    • D. Member functions and member variables are both public.

  5. Consider this class definition:
     class quiz { public: quiz( ); int f( ); int g( ) const; private: double score; }; 
    Which functions can carry out an assignment score=1.0; to the private member variable score?
    • A. Both f and g can carry out the assignment.
    • B. f can carry out the assignment, but not g.
    • C. g can carry out the assignment, but not f.
    • D. Neither f nor g can carry out the assignment.

  6. What is the primary purpose of a default constructor?
    • A. To allow multiple classes to be used in a single program.
    • B. To copy an actual argument to a function's parameter.
    • C. To initialize each object as it is declared.
    • D. To maintain a count of how many objects of a class have been created.

  7. Suppose that the foo class does not have an overloaded assignment operator. What happens when an assignment a=b; is given for two foo objects?
    • A. The automatic assignment operator is used
    • B. The copy constructor is used
    • C. Compiler error
    • D. Run-time error

    Multiple Choice Section 2.4 Classes and Parameters

  8. When should you use a const reference parameter?
    • A. Whenever the data type might be many bytes.
    • B. Whenever the data type might be many bytes, the function changes the parameter within its body, and you do NOT want these changes to alter the actual argument.
    • C. Whenever the data type might be many bytes, the function changes the parameter within its body, and you DO want these changes to alter the actual argument.
    • D. Whenever the data type might be many bytes, and the function does not change the parameter within its body.

  9. Here is a small function definition:
     void f(int i, int &k) { i = 1; k = 2; } 
    Suppose that a main program has two integer variables x and y, which are given the value 0. Then the main program calls f(x,y); What are the values of x and y after the function f finishes?
    • A. Both x and y are still 0.
    • B. x is now 1, but y is still 0.
    • C. x is still 0, but y is now 2.
    • D. x is now 1, and y is now 2.

  10. Here is a function prototype and some possible function calls:
     int day_of_week(int year, int month = 1, int day = 1); // Possible function calls: cout << day_of_week( ); cout << day_of_week(1995); cout << day_of_week(1995, 10); cout << day_of_week(1995, 10, 4); 
    How many of the function calls are legal?
    • A. None of them are legal
    • B. 1 of them is legal
    • C. 2 of them are legal
    • D. 3 of them are legal
    • E. All of them are legal

    Multiple Choice Section 2.5 Operator Overloading and Friends

  11. Which kind of functions can access private member variables of a class?
    • A. Friend functions of the class
    • B. Private member functions of the class
    • C. Public member functions of the class
    • D. All of the above can access private member variables
    • E. None of the above

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image_2

Step: 3

blur-text-image_3

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Graph Databases

Authors: Ian Robinson, Jim Webber, Emil Eifrem

1st Edition

1449356265, 978-1449356262

More Books

Students also viewed these Databases questions