C++ Programming - Winter 2011


01/21/11   I received a couple of emails from nervous students who were concerned about course grades. I realize that both the second project and the final exam were challenging. There WILL be a curve. Grades will be posted on Sunday. I enjoyed teaching this class very much -- your enthusiasm made it fun for me, so thank you!

01/21/11   Please don't forget that you can submit Project #2 for up to 24 hours after the due date with a 20% deduction!

01/18/11   Project #2: Caution! You may not use global or static variables to store the nodes for your graphs. If you do, then it would be impossible for two distinct graphs to exist at the same time. The nodes must be allocated dynamically. Presently the release tests are flawed and so projects with this defect have been getting through. I will fix the tests tomorrow.

01/18/11   Project #2: Make very sure that your operator< for the BoardState class satisfies the rules listed in the specification! Many of the release tests use BoardStates as keys for a map. As you know, maps will behave very strangely if operator< has not been defined properly for the keys!

01/18/11   HW #5 has been posted (due Thursday at start of class).

01/17/11   For detailed information about how to make more effective use of the memory-leak detection facilities in Visual C++, please see this link. (Thanks to Yehuda for finding this!)

01/14/11   Project #2: For those who have already copied the project files: I just now (8:30PM) made available skeleton versions of CompleteBoardState.cpp and PrunedBoardState.cpp. Without these files, the submit server will be unable to compile a "partial submission" consisting of just the BoardState class. Later when your BoardState class is working, you can fill in proper implementations for CompleteBoardState and PrunedBoardState.

01/14/11   We have a winner! Andrew Lohr has completed all three parts of project #2 successfully and with no memory leaks! (I told you I would embarrass the first person to complete it.)

01/13/11   Project #2: Time is short during a winter course, so I upped the number of release tokens you get from 3 to 6. (So you have 6 tokens to start -- when you use one it comes back 24 hours later.)

01/13/11   Project #2: There was a bug in the file driver2.cpp. I have corrected it, so if you copied the project files before today at 7:00PM or so, please grab a fresh copy of driver2.cpp from my directory.

01/13/11   IMPORTANT: Please note that we will not have class on Monday 1/17. The University will be closed for the observance of Martin Luther King Day.

01/12/11   Project #2 has been posted! This project is fairly challenging and represents a large portion of your grade in the course, so please get started on it right away.

01/10/11   I just made a quick adjustment to the grading policy for HW#4. Please see the new policy that is now part of the assignment specification (I added a section called "Grading".)

01/10/11   Homework #4 has been posted. It is a coding exercise to be submitted electronically.

01/09/11   There is a "gotcha" with the test called testTextGenerationFunction in Project #1. The test does NOT work in Visual C++ (but it works fine on Linuxlab.) The problem is that the rand() function does not work the same way on both systems. Thanks to Yehuda Katz for identifying this issue!

01/06/11   Project #1 has been posted! (Click the "Assignments" link above.)

01/06/11   HW #3 has been posted!

01/04/11   Lecture slides and coding examples from today have been posted. In the future I will continue to post these each day without an announcement about it! The coding examples for today are on the linuxlab system in the directory: ~fpe/389C/Examples/Lec02

01/04/11   HW #2 has been posted!

01/03/11   Lecture slides from today have been posted, and I will continue to post them daily. Please click the menu option above that says "Lectures".

01/03/11   The coding examples from today's lecture are available on the linuxlab system in the directory:


I suggest copying them to your own space so that you can edit them:

cp -r ~fpe/389C/Examples/Lec01 .

01/03/11   Homework #1 has already been posted! Feel free to get started on it right away. (Click the Assignments menu option above.)

01/03/11   Welcome to CMSC389C. Be sure to check this page frequently for important class announcments.