MIME-Version: 1.0 Server: CERN/3.0 Date: Monday, 16-Dec-96 23:10:40 GMT Content-Type: text/html Content-Length: 1987 Last-Modified: Wednesday, 28-Feb-96 21:26:54 GMT
Topics For the Prelim: 1) Basic C++ constructs - basic types (int, char, float, double) - I/O (cin, cout) - control statements (for loops, while loops, if, switch) - function declaration, reference parameters vs value parameters 2) Complex C++ types - strings - definition (array of characters terminated by '\0') - functions for manipulating strings (strcmp, strcpy) - arrays (including multi-dimensional arrays), structs, arrays of structs, structs of arrays of ..., etc - typedefs - const declarations, static declarations 3) Pointers - declaring pointers - *, & operators (how to use them, understanding programs that contain them) - pointers to structures (structPtr->field == (*structPtr).field) - relationship between pointers and arrays - indexing pointers and pointer arithmetic(ptr[3], *ptr++) - arrays and pointers as parameters in functions 4) Classes - basic declarations - private vs public - friend functions vs member functions - operator overloading - overloading the assignment operator - constructors - null constructor, copy constructor, constructor with arguments - destructors - const member functions - 'this' 5) Memory Management - definitions of static, automatic, dynamic data - using new and delete - using new and delete for arrays - using new and delete in conjunction with classes - shallow copy vs deep copy 6) Software Engineering('Good Programming Style') - how to divide programs up into .h and .c files - why divide up programs into .h and .c files? - how to write comments (Note: you do not have to comment any code on the test unless you are directly asked for comments but some explanations *might* be useful for gaining partial credit if you make mistakes) - the difference between declarations and definitions, interfaces and implementations - public vs private member functions, and data members of classes