Programming with C++

Summer Quiz Question Assignments

   Contributing questions due on 9/17

   Date of quiz: To Be Determined

BananaBots: Excellent job on the first C++ quiz in July! Now it's time to start working on the 2nd quiz that covers tutorials 41-73 ^_^. Please come up with at least two test questions for the tutorials assigned to you on the table below. The types of questions must be multiple choices. Please use the Contact Form to send your questions and answers. The quiz covers tutorials 41-73. The date of the test is the end of September. Make sure that you watch all tutorials to pass the quiz.

Tutorial #Assigned to
41 - Pointers and MathPeter
43 - DeconstructorsRohan Dugad
45 - Member InitializersTony
47 - Composition Part 2Andy
48 - friendRyan
49 - thisJeffrey
51 - More on Operator OverloadingJerry
52 - InheritanceAlex
53 - protected MembersPeter
54 - Derived Class Constructors and DestructorsRyan
55 - Introduction to PolymorphismRohan Dham
56 - virtual FunctionsRohan Dugad
57 - Abstract Classes and Pure virtual FunctionsAndy
59 - function Templates with Multiple ParametersJerry
61 - Template SpecializationsRyan
63 - More Exceptions ExamplesAlex
65 - Tips for File HandlingTony
68 - Cool Program Working with FilesRohan Dham

Sample Quiz Questions

What's the outcome of the following code:

#include <iostream>
using namespace std;

int main()
{
int numbers[5] = {257, 689, 34, 26, 183};
int total = numbers[1] + numbers[4];
cout << total << endl;
}

A. 183
B. 689
C. 257
D. 872

True or False:

When you ou assign a new value to an existing variable the computre will keep the old value and use a new piece of memory for the new value.

A. True
B. False

Which of the following can be overloaded:

A. Object
B. Functions
C. Operators
D. Both B and C

Outline

All BananaBots: We are kicking off the summer learning program for C++. This is a very tense program as you will only one summer to learn the fundamentals of textual programming and concepts of object oriented programming by yourselves with discipline and drive. This will build your software foundation for our future robotics activities in the club. We do not want anyone left behind, so club members have to work hard to master this, and parents need to support this self-learning process by showing your genuine interest and checking in with your child in their progress regularly.

The course materials we use is the Youtube C++ tutorials by "the new boston". You should also read C++ Primer Plus (6th Edition) so that you can learn computer programming systmatically and build a solid foundation.

Learning C++ is entirely self-paced. There will be no coaching or group lab time. Although not required, we recommend that you pair up with someone to make the learning more fun. We expect everybody to complete the entire series, i.e. all 73 classes, before the fall semester starts. Here is a C++ Learning Schedule Template that you can copy to track your progress. Let the fun start!


Code::Blocks

For the time being we recommend Code::Blocks as the IDE (Integrated Development Environment) for your C++ learning. It has all the functions you need to compile and run your programs and it's free. Previously we tried to use CLion but were having trouble getting free student licenses from the vendor.

New boston's Youtube tutorials use Code Blocks as the IDE. Please make sure that you download the right installation package for C++. See the highlighted downloadable file in the screenshot below. It's located at http://www.codeblocks.org/downloads/26. Also please follow the instructions in the first youtube tutorial.