May 21, 2019
Hot Topics:

More articles by Kate Gregory

Controlling Project and File Properties with C++ Macros

Examine a C++ macro that changes a file (within a managed project) from managed (/clr) to unmanaged—a task you may need it to perform for performance reasons, creating a mixed executable.

C++ Language Changes for Visual Studio 2005

Take a look at some of the C++ language changes awaiting you in the next version of Visual Studio.

A C++ Macro to Stub Interface Methods

This column presents a macro for use with a class that implements one or more interfaces. When you run the macro, it adds empty function bodies for all the functions in the interface.

Macros for C++, in C++

Add-ins are usually written in C++ (although you can create them in any .NET language) and macros are written in Visual Basic only... but not any more. Discover new options.

.NET Remoting with Events in Visual C++

Learn how to add a button to a server application (a WinForm app with a big Listen button) and have the handler for the click event raise a custom event.

.NET Remoting in Visual C++

Remoting is one of the three techniques available on the CLR for creating distributed applications.

Static Constructors in Managed C++

A feature under discussion may not be part of Standard C++, but if it's part of Managed C++, why go to C# to have it? If you're willing to target the .NET Framework and write a managed application, why not write in Managed C++?

What is Shadowing, and Is It True that C++ Does It?

Here's a little Object-Oriented question: If I have a function f in my base class, say that takes an integer, and I write an overload of that function in a derived class that takes something different, can I still call the original function that was inherited from the base class? The answer might surprise you.

Why Don't I Get Those Keywords?

Have you ever wondered if you could use keywords such as Property and Delegate in your C++ applications? You can, but it's not always obvious how to do so.

Strings and Performance in .NET

STL, String, StringBuilder, character arrays — How do you get the best performance when working with strings?

Sample Chapter: The .NET Base Class Libraries

The libraries in the .NET Framework cover almost every task you are likely to tackle when developing for .NET. Learn how to use them from this chapter from the Visual C++ .NET 2003 Kick Start.

Performance Matters: Choose Your Library Wisely

Benchmarking is not for the faint of heart—you have to know what you're measuring. Don't always believe that Java is faster than VB.NET, nor that C# is faster than C++.

Writing a Windows Service in Managed C++

For years, writing a service meant writing in Visual C++. Well, now you can learn how they are super easy to make in Managed C++ as well as VB .NET or C#!

Visual Studio Tools for the Microsoft Office System

Take your .NET development one step farther with Microsoft Office System projects.

Using Configuration Files in Visual C++

Learn to use the web.config file to configure anything you'd like the user to be able to change without recompiling and redeploying your C++ application.

Arranging Custom Marshaling With P/Invoke

Learn how to arrange custom marshaling for function parameter when using P/Invoke to access a legacy function from Visual C++.

What's in Visual C++ Whidbey

Learn about some of the changes to Visual C++ .NET, the compiler, and related developer tools coming in 'Whidbey'.

Marshaling and Conversion with P/Invoke in Visual C++ .NET

Learn why you need P/Invoke if you would like to control the marshaling or conversions associated with a call to a function where data types may need to be converted.

Head-Spinning Continued: The Managed Wrapper

Yes, you can leave your legacy C++ class as native code and still use it from C# or Visual Basic .NET.

Head-Spinning Continued: The XCopy Port

Make that old legacy C++ code available to managed code — It's a lot less work than you might expect!

Head-Spinning Continued: P/Invoke

Learn how to wrap your legacy C++ code into a DLL and then call it from both managed and unmanaged code.

Head-Spinning Continued: COM Interop

Learn how to convert an ordinary unmanaged C++ class to a COM component, and then use that COM component from both unmanaged and managed code.

Head-Spinning Interoperability between Managed and Native C++

Chances are, if you are using C++ and moving to .NET, you won't want to rewrite all your existing C++ code. Kate begins a series of articles on the various ways you can reuse old C++ code in new Managed C++ projects.

Partial Template Specialization with Visual C++ .NET 2003

C++ templates are like a secret weapon for developers. Those who never got around to learning C++ because 'it's really complicated' and 'it has all kinds of funky features no one would ever use' have no idea what we can do with templates. Now to learn about templates and the dramatic improvements in Visual C++ .NET!

Mixing and Matching: Using STL with the Base Class Library

If you're writing a new Managed C++ application and you're thinking of using collections in that code, you may be unsure whether to use STL collections or a class from the Base Class Library. Learn your choices.

Managed, Unmanaged, Native: What Kind of Code Is This?

With the release of Visual Studio .NET, many developers are now willing to consider using the new technology known as managed code. But especially for C++ developers, it can be a bit confusing. That's because C++ is special.

Microsoft Announces Bug in Visual C++ .NET

Microsoft announced a potentially serious bug that affects only Visual C++ developers using VS.NET 2002 and VS.NET 2003 to create mixed DLLs. While only a few may be impacted by this, all Visual C++ programmers should be aware of it.

.NET Under the Hood: a Little ILDASM

Does a simple C++ application compile to the same IL as the equivalent VB or C# application in .NET? Let's see.

Performance Implications of Managed Data

When using Managed C++, be aware that boxing and unboxing values so that you can use the Base Class Libraries carries a performance cost.

Using the .NET Image Class with Managed C++

Previously Kate showed how to use the ATL CImage class to dramatically simplify working with images in classic C++ applications. This time around, she creates the an application as a Managed C++ Windows application and uses System.Drawing.Image to do the heavy lifting.

Visual Studio .NET 2003, aka Everett, for the C++ Programmer

Visual Studio .NET 2003 is of special interest to Visual C++ programmers, who get all kinds of neat stuff that was missing from the current released version.

Implementing Simple Role-Based Security in Managed C++

With .NET, there's no excuse for skimping on security. When you build .NET applications, you get a lot of security code without writing it yourself. Kate presents the code you need to implement role based security using Managed C++.

Calling a Web Service Asynchronously

Web services are the talk of the Net; however, there is little information on Web Services with Visual C++. Discover how to call a Web service asynchronously using Visual C++ .NET.

Working with XML in Managed C++

Tackle using Visual C++ .NET's managed code to parse, search, and generate XML. You'll use the help of the .NET Framework to produce the managed C++ code.

Working with XML in a Classic COM Application

XML was changing everything before .NET came along. In Kate's newest article, she covers how to read, write, and transform XML using the Microsoft COM component called MSXML 4.

Creating and Using a Web Service in Managed C++

Web Services are the talk of the day. If you want to learn how to create a Web Service with Managed C++, then now is your chance!

Building a .NET Windows Forms App in Visual C++ .NET

Many people will tell you that you can't build a Windows Forms application in Visual C++ .NET. However, that's not strictly true.

What's Special about Visual C++ .NET?

Visual C++ .NET is not the same as Visual C++ 6.

Enterprise Development Update

Don't miss an article. Subscribe to our newsletter below.

Thanks for your registration, follow us on our social networks to keep up-to-date