Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I know quite a lot about C++ but I know very little about .NET. I would like to broaden my horizons.

Is there a book out there that's the de-facto standard for describing best practices, design methodologies, and other helpful information on C++/CLI (preferably with information about .NET in general as well)? What about that book makes it special?

share|improve this question

closed as off-topic by gnat, Kilian Foth, MichaelT, BЈовић, Dan Pichelman Feb 20 at 18:48

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "Questions asking us to recommend a tool, library or favorite off-site resource are off-topic for Programmers as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it." – gnat, Kilian Foth, MichaelT, BЈовић, Dan Pichelman
If this question can be reworded to fit the rules in the help center, please edit the question.

2 Answers 2

up vote 2 down vote accepted

I'm no expert in C++/CLI or .NET, but I also own C++/CLI in Action and can really recommend it.

It does only give a small introduction to the .NET framework and doesn't really introduce any parts of the huge .NET library. But it gives you a solid introduction to its core principles.

The good thing (for you) is, it is targeted to someone who already knows C++ and OO in general and in the first part it explains the new language features introduced by .NET (which can also be found in other .NET languages, therefore being useful beyond C++/CLI) and the differences to classical C++.

One of the major topics of the book is the interoperation of managed (.NET) and unmanaged (native) code, as this is one of the main strengths of C++/CLI, therefore in the second part it describes the many possiblities and pitfalls of mixing native with managed code.

The third part elaborates a bit on using major .NET frameworks (like Windows Forms or WPF) with C++/CLI and concentrates on using these from native C++ applications.

Although this book won't give you an introduction to the huge .NET library (for this you might want another book, which will surely use C# or something more naturally .NET), it explains all of the .NET language features (that are the same all over the major .NET languages) and is especially useful if you want to use C++/CLI to combine classical C++ code with .NET code, as it explains all the pitfalls and possibilies (that range much wider than PInvoke, known from other .NET languages). For example, I myself used it when I needed to use a library that only had a .NET interface in my native C++ application.

share|improve this answer

Expert C++ / CLI covers an introduction to .NET development as well as coverage of the C++ / CLI language, this would probably be your best bet as it's specifically targeted for Visual C++ developers moving over to managed code.

However, I believe CLR via C# was originally targeted to cover the the .NET framework with CLI, then later it was changed to C# (I'm guessing due to the much broader target audience). This book has the most comprehensive coverage of the .NET framework that I'm aware of.

share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.