C++ Object Oriented Programming
Den här kursen ger dig en solid grund i C++, i allt från grundläggande koncept som klasser, arv och polymorfism till avancerade tekniker som överlagring av operatorer och hantering av dynamiskt minne. Med en kombination av teoretiska genomgångar och praktiska övningar får du möjlighet att utveckla dina färdigheter och skriva robust C++-kod.
Kursen hålls på begäran
Kontakta oss för mer information.
Telefon: 08-562 557 50
E-post: kursbokning@cornerstone.se
Under kursen kommer du att lära dig att skapa och använda komplexa klasser, använda virtuella funktioner och bygga Windows-applikationer.
Målgrupp och förkunskaper
Den här kursen vänder sig till utvecklare. Du bör ha grundkunskaper i språket C.
För att alltid hålla en hög kvalitet på våra teknikkurser använder vi både engelsk- och svensktalande experter som kursledare.
Detaljerad information
Kursmaterialet är på engelska, med detta innehåll:
Basic Concepts of Object Orientated Programming Skills
- Objects.
- Abstract Data Types.
- Data Hiding.
- Classes.
- Data Encapsulation.
- Inheritance Polymorphism.
Skills: Students will be able to define these terms and describe how they relate to the overall goals of object orientated programming.
Basic Concepts and Syntax
- C++ and ANSI C.
- Declaring Classes & Objects.
- Volatile Keyword.
- Visibility.
- C++ Operators.
- Defining Constructors & Destructors.
Skills: Using hands on workshops the delegates will create and use a simple class. Students will be able to compile, link and run simple C++ programmes that use the above concepts.
Classes with Pointers
- Const Keyword.
- References.
- Review of Storage Allocation.
- Constructors and Destructors.
- Operator Overload.
- Overloaded Assignment Operator.
- The this Pointer.
- The Copy Constructor.
Skills: Students will Create and use more complex classes. They will describe and demonstrate in C++ the difference between function calls by value and function calls by reference. They will describe the 3 main storage areas and write C++ code to create objects in each of these areas. They will also describe the difference between the overloaded assignment operator and the copy constructor.
More Features of Classes
- Friend Functions.
- Friend Classes.
- Static Data Members.
- Static Member Functions.
- Pointer to Member Operators.
- Arrays of Class Objects.
- Dynamic Storage Allocations.
- The New and Delete Operators.
- C++ Preprocessor Statements.
Skills: Students will be able to use friend functions & friend classes to access data, use the new and delete operators to work with memory from the heap, use static data members and member functions, use the pointer to member operators and use the C preprocessor to avoid circular definitions in header files. In the hands on element of this module they will be using Static Variables, building a Stack, embedding an Object in a Class, using Storage Allocation.
More on C++ Syntax
- Enum Consonants.
- Aggregate Types.
- Scope Access Operators.
- Virtual Base Classes.
- Templates.
- Full Syntax of A Class Definition.
Skills: In this module delegates will be learning to use more complex aspects of the C++ language.
Inheritance
- Base & Derived Classes.
- Accessibility of Members.
- Member Function Overriding.
- Order of Execution.
- Overriding Function Overrides.
- Scope Resolution.
- Base Pointers & References to Derived Objects.
Skills: Students will be able to use C++ to code the basic concepts of inheritance. Workshops will enhance the concepts of Basic Class Inheritance and Creating a Stack of Strings using Inheritance.
Polymorphism and Abstract Classes
- Definition Virtual Functions.
- Virtual Tables.
- Virtual Destructors.
Skills: Students will be taught how to define Polymorphism, define an Abstract Class and use Virtual Functions. They will also use Virtual Tables and Virtual Destructors. Workshops will highlight the use of Virtual Functions and Abstract Classes.
Class Libraries and Programming
- Container Class Libraries.
- Class Library Directories.
- Using IDE.
- Using Existing Class Libraries.
- The Windows Classes.
- Building a Windows Application.
- Linking for Windows.
Skills: Students will be able to describe what to look for in existing class libraries and write a simple Windows application using C++. This will be reinforced with practical exercise. Students will also use the exercise to place Classes in a library. If the students are not going to be working in a Windows environment then this module will be adapted to a suitable Linux/UNIX platform environment.