Programming with Managed Extensions for Microsoft Visual C++ .NET

Course

In Bath and London

£ 1,185 + VAT

Description

  • Duration

    3 Days

After completing this course, students will be able to create Managed C++ applications that execute in the .NET Framework; define __gc (garbage collected) classes in C++; use __gc pointers and references; define and use value types; use inheritance with __gc classes; use __gc arrays, .NET Framework collections, and reflection; use properties, named operator functions, and exceptions. Suitable for: The goal of this course is to teach existing C++ developers how to write applications for the Microsoft .NET Framework by using Managed Extensions for C++. It is intended for corporate developers, solution providers, IT Web developers, and IT database developers who are responsible for building knowledge management solutions that provide data analysis, reporting, presentation, and workflow.

Facilities

Location

Start date

Bath (Somerset)
3 Kelso Place, Upper Bristol Road, BA1 3AU

Start date

On request
London
See map
Valiant House, 4-10 Heneage Lane, EC3A 5DQ

Start date

On request

About this course

Before attending this course, students must have the following prerequisites:Programming experience with C++, using object-oriented programming techniques.Familiarity with C++ template libraries.

Questions & Answers

Add your question

Our advisors and other users will be able to reply to you

Who would you like to address this question to?

Fill in your details to get a reply

We will only publish your name and question

Reviews

Course programme

Target Audience
The goal of this course is to teach existing C++ developers how to write applications for the Microsoft .NET Framework by using Managed Extensions for C++. It is intended for corporate developers, solution providers, IT Web developers, and IT database developers who are responsible for building knowledge management solutions that provide data analysis, reporting, presentation, and workflow.

Pre-Requisites
Before attending this course, students must have the following prerequisites:Programming experience with C++, using object-oriented programming techniques.Familiarity with C++ template libraries.

Purpose
After completing this course, students will be able to create Managed C++ applications that execute in the .NET Framework; define __gc (garbage collected) classes in C++; use __gc pointers and references; define and use value types; use inheritance with __gc classes; use __gc arrays, .NET Framework collections, and reflection; use properties, named operator functions, and exceptions in managed code; migrate unmanaged C++ code to Managed C++; use COM interoperability with managed code.

Course outline
  1. Managed C++ Applications and the .NET Framework
  2. Defining __gc Classes
  3. __gc Pointers and References
  4. Value Types
  5. Managed Inheritance
  6. Arrays, Collections, and Reflection
  7. Properties, Managed Operators, and Managed Exceptions
  8. Unmanaged Code
  9. COM Interoperability
Module 1:Managed C++ Applications and the .NET Framework
  • Using C++ in the .NET Framework
  • The .NET Framework and Managed Execution Environment
  • Programming with Managed Extensions for C++
  • Using .NET Framework Developer Tools
  • Creating native and Managed C++ applications.
  • Writing code to use managed types in a C++ application.
  • Creating, building, and testing C++ projects for the .NET Framework.
Module 2:Defining __gc Classes
  • Defining Classes in Managed C++
  • Defining Members in a __gc Class
  • Controlling Class Layout
  • Defining __gc classes, and creating and destroying objects of these classes.
  • Defining data members, member functions, constructors, and destructors in a __gc class.
  • Controlling the layout of classes and unions.
Module 3:__gc Pointers and References
  • Pointers and References to __gc and __nogc Objects
  • Pinning and Unpinning Pointers
  • Delegates and Events
  • Defining and using pointers and references to __gc and __nogc objects.
  • Pinning a pointer to a fixed location, to prevent an object from being relocated by the runtime system.
  • Defining delegates to represent member functions in a class
  • Using delegates to specify callback functions for events
Module 4:Value Types
  • Creating and Using Value Types
  • Boxing and Unboxing Value Types
  • Value Enums
  • Defining and using a value type.
  • Performing boxing and unboxing operations on a value type, so that it can be used where a managed object is required.
  • Defining and using value enums
Module 5:Managed Inheritance
  • Defining Base Classes and Derived Classes
  • Interfaces
  • Using Inheritance with Other .NET Framework Languages
  • Defining base classes and derived classes that use the Managed Extensions for C++.
  • Defining and implementing interfaces.
  • Defining Managed C++ base classes and derived classes that integrate with classes written in Microsoft Visual Basic .NET and Microsoft Visual C#.
Module 6:Arrays, Collections, and Reflection
  • Defining and Using _gc Arrays
  • Using .NET Framework Collection Classes
  • Using Reflection
  • Creating, initializing, using, and destroying __gc arrays.
  • Using the .NET Framework collection class library to organize objects.
  • Using reflection to identify the type, data members, and member functions of an object at run time.
Module 7:Properties, Managed Operators, and Managed Exceptions
  • Defining and Using Properties
  • Defining and Using Managed Operator Functions
  • Exception Handling
  • Defining properties in a __gc class.
  • Defining named operator functions in a __gc class.
  • Using exception handling techniques to deal with error conditions in a Managed C++ application.
Module 8:Unmanaged Code
  • Invoking Native APIs in Managed Code
  • Wrapping a __nogc Class in a __gc Class
  • Invoking native APIs directly in managed code, using a direct function call or using P/Invoke.
  • Defining a __gc C++ class to wrap an unmanaged C++ class, to expose the unmanaged class to the .NET Framework.
Module 9:COM Interoperability
  • Importing a COM Type Library into an Interop Assembly
  • Using Imported COM Objects
  • Exporting an Assembly into a COM Type Library
  • Converting the type definitions in a COM type library into a .NET Framework interop assembly.
  • Creating and using instances of imported COM objects within a Managed C++ application.
  • Using the Type Library Exporter tool to convert managed types into a COM type library.

Programming with Managed Extensions for Microsoft Visual C++ .NET

£ 1,185 + VAT