CMPE 320: Fundamentals of Software Development (2019 True/False Questions)

Réussis tes devoirs et examens dès maintenant avec Quizwiz!

A C++ array will not allow you to supply index values that are out of range of the array.

False

A CIL file created by the CLR in C++/CLI is not only too many acronyms, but is also written as executable binary code in a *.exe file.

False

A UML State chart diagram is used to display the possible states of an object used for polymorphism.

False

A default constructor is invoked with a set of empty brackets, ().

False

A git repository only stores the newest version of any file. Older versions are deleted.

False

A git repository relies on the use of a centralized server to store all files.

False

A pointer that has been assigned to nullptr will be evaluated as being true.

False

A struct can only contain members that are all of the same type.

False

A vector collection from the STL cannot use [ ] to access members.

False

A virtual function that overrides a parent class version of itself can also change the default arguments used by the parent class version.

False

Any use of a git repository requires an internet connection.

False

Assignment operators must be overloaded as non-member functions.

False

Atomic types (like int) cannot be initialized using () as objects are.

False

C++ does not allow for multiple inheritance.

False

C++ does not allow the definition of lambda functions.

False

C++ was developed by Ken Thompson and Dennis Ritchie.

False

C++11 was the first standard released by the ISO group for the C++ language.

False

Constructors should always be declared as const.

False

Deleting an uninitialized pointer will not cause a problem because this pointer will automatically be nullptr after declaration.

False

Dividing a non-zero double type value by zero causes a run-time error.

False

Function objects can be created by overloading the [] brackets.

False

Functional requirements must describe "how well" a feature must be implemented by the system.

False

In a Boolean expression a non-zero integer will be considered as false.

False

It is not legal to have a pointer to an atomic type variable, like an int.

False

It is possible to have many unique_ptr<> pointers pointing to the same object on the heap.

False

Local variables cannot be declared as static.

False

Only exceptions that extend std::Exception can be thrown.

False

Only one class can be implemented at a time in a *.cpp file.

False

Program instructions are stored on the heap.

False

Programs that have implementation code in the header, or *.h, file will not compile.

False

Pure virtual function declarations must be implemented by the class that declares them.

False

System architecture details are described in the RAD.

False

Template declarations are able to restrict possible types supplied to the template in code.

False

Templates can only be written to accept a single type.

False

The "CLI" in C++/CLI stands for "Common Language Interpreter".

False

The GCC compiler (ported to MinGW) is the only C++ compiler that adheres to the ISO standards.

False

The SDD cannot change once it has been written.

False

The STL string class is immutable.

False

The amount of memory used by your program on the heap, or "freestore", is fixed at compilation time.

False

The delete operator can also be used to delete an array allocated on the heap.

False

The delete operator will automatically set a pointer to nullptr after deletion.

False

The initialization section in a constructor's implementation can be used to carry out error checking on the arguments supplied to the constructor.

False

The memory consumed by a reference depends on whether you are using a 32-bit or a 64- bit compiler.

False

The operator, &, acts to de-reference a pointer.

False

The operator, |, is the same as ||, except that it does not use short-circuit evaluation.

False

The use of private as a base class access modifier will not change the access of members inherited from the base class.

False

The var keyword uses type inference to type variables in C++.

False

Variables cannot be declared outside a function or class.

False

You can overload an inherited function by using the same function name and a different parameter list in the child class.

False

You still have to invoke the delete operator to start the destruction process of a smart pointer.

False

new or new[] will return a null ptr if heap memory cannot be allocated.

False

Templated functions are typed and built with that type during compilation in order to minimize execution times.

True

The #pragma once pre-compiler directive can be used to prevent the re-declaration of a header file's contents.

True

The *.cpp file containing the implementation of the declarations contained in a header, or *.h, file must have an #include statement for that header file.

True

The C standard library is included in the standard C++ library.

True

The assignment operator, =, returns the value being assigned.

True

The creation of a branch in a git repository allows you to choose a subset of the available files to work on.

True

The function make_unique<>() does not require the use of the new operator to put the object being pointed to on the heap.

True

The goto statement is legal syntax in C++.

True

The long double type uses extended precision in C++.

True

The new operator provides a pointer to a structure stored on the heap.

True

The operator, ->, combines de-referencing and membership when used with a pointer.

True

The operators, * and ->, can still be used with smart pointers from the STL.

True

The string member function, .at(), will throw an exception of an attempt is made to access a character beyond the size of the string.

True

The vector member function, .at(), can be used on the LHS of an assignment statement.

True

To differentiate between pre- and post-increment operator overloadings, the post- increment version must have an un-used int type parameter.

True

Use of the heap in any class in a hierarchy requires a virtual destructor be declared in the base class of that hierarchy.

True

You cannot change the precedence of an operator by overloading it.

True

Conversion constructors can allow mixed type expressions to work with overloaded binary operators.

True

Copy constructors and overloaded assignment operator implementations are also responsible for preventing the aliasing of object contents.

True

Default arguments must be assigned in a function prototype, or declaration, only.

True

If a single namespace is used with the "using" keyword then the scope resolution operator will not be needed to identify names from that namespace.

True

If const is used at the end of a member function declaration then that function cannot change the values contained in the attributes of its own class.

True

In a hierarchy that uses the heap, a child class' copy constructor needs to invoke the parent class' copy constructor.

True

Inline functions must be implemented in the header file.

True

It is bad practice to return a reference to a variable that is local to the function returning it.

True

It is good practice to provide a comment for every git commit to provide the reason for the commit.

True

Managed code in C++/CLI requires the use of handles and gcnew instead of pointers and new.

True

Member functions declared as "explicit" cannot be automatically invoked to help evaluate mixed type expressions.

True

Memory leaks tend to manifest more often for long running programs.

True

Non-member friend functions are able to invoke accessors on arguments of the class type they are friends to, in order to obtain their attribute values.

True

Passing a child class instance by value into a function using a parent type parameter will result in object slicing.

True

Passing by constant reference is usually the best way to pass an argument into a function.

True

Polymorphism must be enabled by declaring the parent class version of the function of interest to be virtual.

True

Smart pointers implement "nearly complete" automatic garbage collection.

True

Static binding is determined by the pointer type at compilation.

True

Coding both a conversion constructor and an overloaded conversion operator for the same type can lead to an ambiguity.

True

"O-code" files need to be processed to executable files before being sent to the OS for execution.

True

A "memory leak" is a result of not properly deleting a heap allocated structure.

True

A C++ program can contain and compile well-written C code.

True

A dynamic_cast<type> throws an exception if a pointer cannot be cast to the specified type.

True

A function can return a stable pointer to a local variable provided that variable is stored on the heap.

True

A reference cannot be assigned to nullptr.

True

Ambiguities can result from using the "using" keyword for too many namespaces.

True

An agile team expects to be coding, designing and testing all at the same time.

True

An overloaded pre-increment function will run faster than the equivalent overloaded post- increment version.

True

Any programming language used in .NET must follow the CLS rules which includes the mandated use of shared object types for what ISO C++ considers atomic types.

True

By using pointer arithmetic it is possible to read memory locations that have not been assigned to variables.

True

C++ programs are first compiled to intermediate "O-code" files.

True

C++ style casts are templated.

True


Ensembles d'études connexes

AP Psychology Chapter 14: Social Psychology Multiple Choice Part 2/2

View Set

OB Chapt 2 Family-Centered, Community-Based Care

View Set

Chapter 1: Introduction to Child Health & Pediatric Nursing

View Set

A3 Problem Solving in Social Studies Learning about problem, Identify Gathering Info. make decision take action

View Set

Chapter 2 Accounting on the Internet- True/False

View Set

Famous People in Science and Mathematics

View Set

monopolistic competition and oligopoly

View Set