C++

Administration

  • Brochures
  • C++ Jeopardy
  • Formats used
  • Materials required
  • Borland C++ 4.0 custom installation directions
  • One minute paper
  • Evaluation forms

C++

Programming

A Hands-On

Short Course

5:30 P.M. - 9 P.M.

Tuesdays and Thursdays

January 2-23, 1996

Minneapolis Campus

University of St. Thomas

Graduate Programs in Software

Who Should Attend

This workshop is aimed at programmers, analysts, and software engineers who want to develop applications in C++. This course assumes that the participant is already familiar with another procedural language and is thoroughly familiary with variables, arrays, control structures, functions, and parameter passing. No knowledge or experience in either the C or the C++ programming language or object-oriented methodology is assumed.

Workshop Instructor

Dr. Thomas P. Sturm

Dr. Sturm has been a professor of Computer Science at the University of St. Thomas since 1971. He has also served as a software specialist at 3M and has consulted for a wide variety of Twin Cities' organizations. He has conducted C and C++ workshops using a variety of compilers on both mini and microcomputers. Dr. Sturm has also conducted courses in a wide variety of other programming languages, CASE tools, and computer science areas.

C++ Programming Hands-On Short Course

January 2- 23, 1996, Tuesdays and Thursdays, 5:30 P.M. to 9:00 P.M.

C++ is an extension to the C programming language that allows better programming as well as a language that facilitates object-oriented programming. C++ provides numerous improvements to the C programming language, such as enforcing the proper passing of parameters to functions. C++ allows developers to encapsulate rules, procedures, and processes into a single point of change and control.

There are a number of novel concepts introduced by C++. Migration to C++ from existing programs in any language requires careful attention to detail in ways uncommon to other programming languages. This can be a source of considerable frustration even for experienced programmers trying to learn the C++ language on their own.

Beginnings of C++

Philosophy of C++; Justification for use; Using a development environment (Borland Turbo C++ will be used); Variables, constants, and casts; Input/Output basics.

Features of C++

Functions and function prototypes; User and library functions; Arithmetic operators, expressions, control structures; Pointers; Compiler options and error checking; References (function call by reference); Overloading functions and operators

Classes and Objects

Object-oriented programming; Class definition; Overloading class operators; Overloading class functions; Constructors and destructors;

Interaction between Classes

Header files; Inline functions; Friends; Inheritance; Polymorphism; Virtual functions

I/O and Library Functions

Stream input/output; File I/O; Character and string functions; Mathematical functions

Advanced Features

Function templates; Exception handling; Multiple inheritance; Class libraries

______

Cost for this workshop is $900 which includes all course materials and parking.

------

Registration for C++ Programming January 2-23, 1996.

Name______

Company______

Address______

City______State______Zip______

Daytime Phone Number______Position______

To register, please complete and send this form with a check for $900 or letter of intent to Graduate Programs in Software, University of St. Thomas, Mail #5025, 2115 Summit Ave., St. Paul, MN 55105. Call (612) 962-5500 for more information.

C++

Programming

A Hands-On

Workshop

8 A.M. - 4 P.M.

May 22, 23, and 24, 1995

Minneapolis Campus

University of St. Thomas

Graduate Programs in Software

Who Should Attend

This workshop is aimed at programmers, analysts, and software engineers who want to develop applications in C++. This course assumes that the participant is already thoroughly familiar with C control structures, functions, parameter passing, and pointers. No knowledge or experience in the C++ programming language or object-oriented methodology is assumed.

Workshop Instructor

Dr. Thomas P. Sturm

Dr. Sturm has been a professor of Computer Science at the University of St. Thomas since 1971. He has also served as a software specialist at 3M and has consulted for a wide variety of Twin Cities' organizations. He has conducted C and C++ workshops using a variety of compilers on both mini and microcomputers. Dr. Sturm has also conducted courses in a wide variety of other programming languages, CASE tools, and computer science areas.

C++ Programming Hands-On Workshop

May 22, 23, and 24, 1995 from 8 A.M. to 4 P.M.

C++ is an extension to the C programming language that allows better programming as well as a language that facilitates object-oriented programming. C++ provides numerous improvements to the C programming language, such as enforcing the proper passing of parameters to functions. C++ allows developers to encapsulate rules, procedures, and processes into a single point of change and control.

There are a number of novel concepts introduced by C++. Migration to C++ from existing C programs requires careful attention to function prototyping and naming conventions. This can be a source of considerable frustration even for experienced C programmers trying to learn the C++ language on their own.

Preparing for C++

Philosophy of C++; Justification for use; Using a development environment (Borland Turbo C++ will be used); C++ as a better C; Preparing variables, constants, and casts; Input/Output basics.

Features of C++

Preparing functions and function prototypes; Preparing structures and pointers; Compiler options and error checking; References (function call by reference); Overloading functions and operators

Classes and Objects

Object-oriented programming; Class definition; Overloading class operators; Overloading class functions; Constructors and destructors;

Interaction between Classes

Header files; Inline functions; Friends; Inheritance; Polymorphism; Virtual Functions

I/O and Library Functions

Stream Input/Output; File I/O; Character and String Functions; Mathematical Functions

Advanced Features

Function Templates; Exception Handling; Multiple Inheritance; Class Libraries

______

Cost for this workshop is $600 which includes all course materials and parking.

------

Registration for C++ Programming on May 22, 23, and 24, 1995.

Name______

Company______

Address______

City______State______Zip______

Daytime Phone Number______Position______

To register, please complete and send this form with a check for $600 or letter of intent to Graduate Programs in Software, University of St. Thomas, Mail #5025, 2115 Summit Ave., St. Paul, MN 55105. Call (612) 962-5500 for more information.

Technical Seminar

Graduate Programs in Software

C++ Programming

A three-day seminar

Tuesday through Thursday October 26 through 28, 1993

8 a.m. to 4:00 p.m.

University of St. Thomas - Minneapolis Campus

1000 Lasalle Avenue - Room 342/344

C++ is an extension to the powerful, efficient, and portable C language. C++ provides numerous improvements to the C programming language, such as enforcing the proper passing of parameters to functions. C++ allows developers to encapsulate rules, procedures, and processes into a single point of change and control. These and other features of C++ allow for significant improvements in programmer productivity. The number of major system and application programs written in C++ has grown rapidly in recent years.

There are a number of novel concepts introduced by C++. Migration to C++ from existing C programs requires careful attention to function prototyping and naming conventions. This can be a source of considerable frustration even for experienced C programmers trying to learn the C++ language on their own.

Hands-on sessions will be conducted on IBM PS/2's using Borland's Turbo C++ compiler, but the code written will run in a wide variety of environments. Each participant will receive a disk containing a set of demonstration programs, as well as a set of printed classroom materials. The course will consist of approximately 75% lecture, 25% hands-on laboratory.

This course is aimed at programmers, analysts, and software engineers who are already experienced in the C programming language. This course assumes that the participant has at least the equivalent of a year of full-time programming experience in C and is thoroughly familiar with functions, parameter passing, pointers, and structures. No knowledge or experience in the C++ programming language, use of object-oriented methodology, or exposure to artificial intelligence is assumed. (A four day technical seminar in the C programming language is offered separately for those without the prerequisite experience in C programming.)

By the end of the course, qualified and diligent participants will be able to:

• understand the philosophy of C++

• write short programs and supporting functions, and header files in C++

• understand good, safe, and defensive programming procedures as they pertain to C++

• read and modify existing well-written C++

• understand the object-oriented extensions to C provided by C++

• understand the concepts of overloading, inheritance, and polymorphism

During the seminar, participants will be given the opportunity to:

• write stream processing functions

• use common library functions

• write numeric processing functions

• migrate existing C programs to C++

• create and use object classes in C++

• overload functions in C++

• write functions to perform input/output to terminal and files

About the Instructor:

Dr. Thomas P. Sturm has been a professor of Computer Science at the University of St. Thomas since 1971. He has also served as a software specialist at 3M and has consulted for a wide variety of Twin Cities' organizations. He has conducted C and C++ workshops using a variety of compilers on both mini and microcomputers. Dr. Sturm has also conducted courses in a wide variety of other programming languages, CASE tools, and computer science areas.

Fees

C++ Seminar$645

(includes tuition and course materials)

Technical Seminar

Graduate Programs in Software

C++ Programming

Tuesday through Thursday October 26 through 28, 1993

8 a.m. to 4:00 p.m.

University of St. Thomas - Minneapolis Campus

1000 Lasalle Avenue

C++ is an extension to the powerful, efficient, and portable C language. C++ provides numerous improvements to the C programming language, such as enforcing the proper passing of parameters to functions. C++ allows developers to encapsulate rules, procedures, and processes into a single point of change and control. These and other features of C++ allow for significant improvements in programmer productivity. The number of major system and application programs written in C++ has grown rapidly in recent years.

There are a number of novel concepts introduced by C++. Migration to C++ from existing C programs requires careful attention to function prototyping and naming conventions. This can be a source of considerable frustration even for experienced C programmers trying to learn the C++ language on their own.

Hands-on sessions will be conducted on IBM PS/2's using Borland's Turbo C++ compiler, but the code written will run in a wide variety of environments. Each participant will receive a disk containing a set of demonstration programs, as well as a set of printed classroom materials. The course will consist of approximately 75% lecture, 25% hands-on laboratory.

This course is aimed at programmers, analysts, and software engineers who are already experienced in the C programming language. This course assumes that the participant has at least the equivalent of a year of full-time programming experience in C and is thoroughly familiar with functions, parameter passing, pointers, and structures. No knowledge or experience in the C++ programming language, use of object-oriented methodology, or exposure to artificial intelligence is assumed. (A four day technical seminar in the C programming language is offered separately for those without the prerequisite experience in C programming.)

By the end of the course, qualified and diligent participants will be able to:

• understand the philosophy of C++

• write short programs and supporting functions, and header files in C++

• understand good, safe, and defensive programming procedures as they pertain to C++

• read and modify existing well-written C++

• understand the object-oriented extensions to C provided by C++

• understand the concepts of overloading, inheritance, and polymorphism

During the seminar, participants will be given the opportunity to:

• write stream processing functions

• use common library functions

• write numeric processing functions

• migrate existing C programs to C++

• create and use object classes in C++

• overload functions in C++

• write functions to perform input/output to terminal and files

About the Instructor:

Dr. Thomas P. Sturm has been a professor of Computer Science at the University of St. Thomas since 1971. He has also served as a software specialist at 3M and has consulted for a wide variety of Twin Cities' organizations. He has conducted C and C++ workshops using a variety of compilers on both mini and microcomputers. Dr. Sturm has also conducted courses in a wide variety of other programming languages, CASE tools, and computer science areas.

Fees

C++ Seminar$645

(includes tuition and course materials)

C++ Programming

Tuesday to Thursday, October 26 to 28, 19938 a.m. to 4:00 p.m.

University of St. ThomasMinneapolis Campus1000 Lasalle Avenue

This seminar provides experienced C programmers the ability to use the C++ extensions to the powerful, efficient, and portable C language. Participants will learn the numerous improvements that C++ provides over the C programming language, such as enforcing the proper passing of parameters to functions and implementing object-oriented programming techniques by allowing them to encapsulate rules, procedures, and processes into a single point of change and control. These and other features of C++ allow for significant improvements in programmer productivity. The number of major system and application programs written in C++ has grown rapidly in recent years.

There are a number of novel concepts introduced by C++. Migration to C++ from existing C programs requires careful attention to function prototyping and naming conventions. This can be a source of considerable frustration even for experienced C programmers trying to learn the C++ language on their own.

After completing this seminar, you should be able to understand the philosophy of C++; write short programs and supporting functions and header files in C++; understand good, safe, and defensive programming procedures as they pertain to C++; read and modify existing well-written C++; understand the object-oriented extensions to C provided by C++; and understand the concepts of overloading, inheritance, and polymorphism.

$645 (includes tuition and course materials)Register by October 19, 1993

C++ Jeopardy

* (in front)

& (in front)

//

iostream.h

cout

.cpp

double(n)

cin

const

sizeof

operator

struct

void

typedef

C++ Jeopardy

::

.*

->*

...

new

delete

class

private

protected

public

this

* (in front of fcn name)

#ifndef

#endif

inline

template

C++ Jeopardy

enum

catch

throw

template

ostream&

ostream& operator <

friend

virtual

volatile

cin.width

iomanip.h

setw

setprecision

Formats Used

Cbinder

Normal2 +Font: 64 pt, Bold, Centered, Position: 0.13” From Text, 0.13” From Text

Cpage (Alt-F)

Normal2 + Font: 18 pt, Centered

Cparagraph (Alt-P)

Normal2 + Font: 14 pt, Indent: Hanging 0.5", Space Before 5pt, Tab stops: 1", 1.5", 2", 2.5", 3", 3.5"

Csection

Normal2 + Font: 40 pt, Bold, Centered

Cline (Alt-C)

Normal + Font: 14 pt, Indent: Left 0.5" Hanging 0.5"

footer

Normal2 + Font: 10 pt, Tab stops: 3" Centered, 6" Right Flush

header

Normal2 + Tab stops: 3" Centered, 6" Right Flush

Normal (Alt-N)

Font: Courier New, 12 pt, English (US), Flush left, Line Spacing Single, Tab stops: 0.5", 1", 1.5", 2", 2.5", 3", 3.5", 4"

Normal2

Font: Times New Roman, 12 pt, English (US), Flush left, Line Spacing Single

page number

Normal2 + Font: 10 pt

Materials Required

1. Student registration list

2. Tent cards

3. Notebooks

3-ring binder

materials printed two sides

divider tabs with printed inserts

4. Computers

IBM PS/2's with hard disk drive with adequate available disk space

6MB of available disk space for Turbo C++ 2.0

80MB of available disk space Borland C++ 4.0

Turbo C++ or Borland C++ for each machine

5. Blackboard or whiteboard

Chalk or dry erase markers

6. Flip chart

Marking pens

7. Overhead projector

8. Transparencies

9 Transparency marking pens

10 PC flat projection panel

11 TV with VCR for VHS tape playback

12 Borland "World of Objects" VHS videotape

13 Refreshments

14 Lecture room

One large combined room with computers for lecture/lab

or one lab room with computers and a second lecture room

Computers in lab must be available full day for all days

15 Student sample program disks

16 Reference materials

Turbo C++ / Borland C++ documentation

Ladd

Stroustroup

Lippman

Nagler

expanded course manual

17 Masking tape

18 Pointer

19 Blank paper

20 Loose supplemental handouts

a. Solutions

b. Evaluation forms

Borland C++ 4.0 Custom Installation Directions

Scan for viruses

Make a rootback, copy key files as precaution

Boot clean (remove network or other drivers, if present ... temporarily)

Make sure config.sys contains files=40 (or greater)

Make sure at least 45 Meg free on each system before booting

Run A:\INSTALL

Select CUSTOM installation

DE-SELECT:

Windows LAN

Install Win32s

32 bit Windows

ObjectWindows Libraries

Remote Debugging

WinSight

Control 3D

WinSpector

Misc

Tiny

Compact

Medium

Huge

Graphics (.BGI) Library

Class Libraries Source

Obsolete Class Libraries

ObjectWindows Examples

ObjectWindows Help

Win32 Reference

Resource Workshop

Visual Utilities

Creating Windows Help

(The installation program should then report that 41,176 KB is required.)

Getting Rid of Viruses

If scan for viruses shows a virus, or you suspect one:

1. Take a floppy

2. Format /s from a known good machine

3. Go to F-PROT directory, copy all files

4. Copy FDISK.COM and SYS.COM from DOS directory

5. Write protect floppy

6. Boot bad machine from this floppy (totally cold after powering down)

7. Run F-PROT SCAN

8. Run F-PROT CLEAN, then check as noted below

8a. For STONED NO INT virus, use FDISK /STATUS

If 100% partitioned, OK

If < 100% partitioned, need to re-format disk

FDISK /MBR fixes boot sector for boot sector viruses

For FORMS virus, do a SYS C:

One-Minute Paper

1. What was the main point of today's lecture modules and labs?

2. What remaining, unanswered question do you have after today's work?

Graduate Programs in Software

Technical Seminar Series

C++ Programming / July 26-28, 1994

This questionnaire contains guidelines for expressing your assessment of the instructor and the seminar which you have attended. This evaluation will be used by the director of the Graduate Programs in Software and the instructor.

Thank you for your assistance.

PART 1: Give a rating of 1(lowest) to 5(highest) for each item, and make additional comments which would be useful to the evaluator:

Poor / Fair / Good / Very Good / Excellent
THE INSTRUCTOR
1. The instructor was organized and prepared for class / 1 / 2 / 3 / 4 / 5
2. The instructor demonstrated a thorough knowledge and understanding of the topic / 1 / 2 / 3 / 4 / 5
3. The instructor made clear the relevance and application of course materials and ideas / 1 / 2 / 3 / 4 / 5
4. The instructor was able to communicate difficult concepts and ideas / 1 / 2 / 3 / 4 / 5
5. The instructor stimulated thinking and discussion, where appropriate / 1 / 2 / 3 / 4 / 5
6. The instructor gave adequate examples and illustrations from outside the text / 1 / 2 / 3 / 4 / 5
7. The instructor was enthusiastic about the subject matter / 1 / 2 / 3 / 4 / 5
8. The instructor was interested in helping participants master the seminar and lab material / 1 / 2 / 3 / 4 / 5
9. The instructor made participants feel free to express themselves both in and out of class / 1 / 2 / 3 / 4 / 5
PART II: THE SEMINAR
1. The seminar was well-planned / 1 / 2 / 3 / 4 / 5
2. Seminar objectives were made clear and the syllabus was followed / 1 / 2 / 3 / 4 / 5
3. The seminar provided learning opportunities that supported the stated objectives / 1 / 2 / 3 / 4 / 5
4. Lab exercises were useful / 1 / 2 / 3 / 4 / 5
5. Handouts were useful / 1 / 2 / 3 / 4 / 5
6. The seminar corresponded with the brochure description / 1 / 2 / 3 / 4 / 5
7. Overall course quality / 1 / 2 / 3 / 4 / 5

PART III: OTHER