The Wayback Machine - https://web.archive.org/web/20100724063154/http://www.codeguru.com:80/cpp/cpp/

    C++

    Special Report: The Definitive Guide to Windows Phone 7

    Microsoft looks to the future with Windows Phone 7, is it enough to catch up with the competition? Read along to learn how WP7 differs from past versions of Windows Mobile and how it matches up against its rivals.

    Classification Of Point In Polygon

    Classify a point respect to a plane polygon that can be concave (i.e. with some angle grater than 180 degrees). Good performance, excellent stability.

    Simplex Optimization Algorithm and Implemetation in C++ Programming

    The article introduces the simplex algorithm, provides a useful C++ function to optimize target function parameters, and shows rich examples, figures, flowcharts. source code is also attached with the article.

    C++ Tutorial: Pointer-to-Member Function

    The tutorial talks about the grammar of C++ pointer-to-member function, their common applications, and their under-the-hood implementations.

    Rich Integration with the Windows 7 Shell through IShellLink

    Shell Links are a Windows feature that has been present since the very first 32-bit Windows release in 1995, and are the technology that the ubiquitous Windows shortcuts are built upon. Windows 7 Jump List tasks also use Shell links, creating renewed interest in using Shell links as a technique for interacting with applications.

    New Features in ASP.NET MVC 2.0

    Discover the new features in ASP.NET MVC 2.0 and how you can leverage them in your applications.

    Windows 7 Taskbar Support and MFC 10

    The Windows 7 Taskbar is one of the most noticeable and useful features of the new operating system, and MFC 10 introduces a number of enhancements that make it easy to integrate the Taskbar with your application.

    Building a Store Locator ASP.NET Application Using the Google Maps API - Part 1

    This ASP.NET tutorial shows how to use the free Google Maps API to build a store locator ASP.NET application.

    ASP.NET Developer Techniques for Dealing With Long Running Processes

    ASP.NET Developers, do you have ASP.NET pages that are slow to respond to the user and/or timeout. Try this technique to move those processes to the background and provide feedback to the user.

    C++ Programming News: The C++0x Final Committee Draft Has Been Approved

    ISOC C++ standards committee moves one step closers to the completion of the C++0x standard.

    C++ Programming: Static Code Analysis and the New Language Standard C++0x

    The article discusses the new capabilities of the C++ programming language described in the standard C++0x and supported in Microsoft Visual Studio 2010. By the example of PVS-Studio, we will see how the changes in the language influence static code analysis tools.

    C++ Programming: Using Initializer Lists And Sequence Constructors in C++0x

    Developers rejoice, the C++0x standard has changed the rules of initialization to allow you to initiate almost any object.

    Lessons on Development of 64-Bit C/C++ Applications

    The course is devoted to creation of 64-bit applications in C/C++ language and is intended for the Windows developers who use Visual Studio 2005/2008/2010 environment.

    Changes to MFC in Microsoft Visual Studio 2010

    This article describes the changes to MFC or the IDE in relation to MFC in Microsoft Visual Studio 2010.

    Customizing MFC Document Recovery

    This C++ tutorial demonstrates how MFC 10 delivers on it's promise by delivering the boiler-plate functionality required to build a professional Windows C++ application with minimal effort while allowing .NET developers to customize aspects of MFC behavior.

    TIP: Half Size Triangular Matrix

    Learn about a technique that allows you to use half the data storage when you have a symmetric distance matrix or other similar triangular matrix.

    Improve Application Quality with Microsoft Foundation Class (MFC) Restart and Recovery

    Windows Vista and 7 provide the ability to restart crashed or hung applications and recover your work. By building on the strength of the Document-View Architecture, Microsoft Foundation Class (MFC) 10 allows new and existing applications to easily take advantage of these Windows features.

    Advanced C++ Listcontrol

    Use your C++ Programming skills to create a special list control that allows another list control to be inserted in a particular cell.

    Using Microsoft's Chart Controls In An ASP.NET Application: Serializing Chart Data

    This article, by Scott Mitchell, shows how to store (and load) the data generated by the Microsoft Chart Controls to disk or some other store.

    Calculating Pi to arbitrary number of digits

    The code calculates the value of Pi to arbitrary number of digits such as 100, 1000 etc. The article describes the theory behind the code.

    What's New in ASP.NET MVC 2.0?

    Microsoft Visual Studio 2010 and .NET framework 4.0 bring many new exciting features for developers. One of them is the improved ASP.NET MVC 2.0. This article focuses on the new and improved characteristics in this popular web application framework from Microsoft.

    Enhance MFC Applications with Preview and Thumbnail Support

    C++ Programming is having a revitalization of Microsoft Foundation Classes (MFC) which continues to deliver simple integration with powerful Windows features. In this article, we'll look at Preview and Thumbnail Support, and how these features can be easily implemented in an MFC application.

    How to make a virtual tree control -- really virtual

    A comprehensive article on how to make a CTreeCtrl really virtual -- good for handling large data trees.

    Supporting Windows Search with MFC

    Windows 7 brings a new level of maturity to Windows Search, and by taking advantage of new MFC functionality first publicly unveiled with the Beta 2 release of Visual Studio 2010, writing a Search filter handler for an MFC application can be easily accomplished.

    64-bit Loki

    Review this report about the testing of portability of the Loki library for 64-bit systems with the help of Viva64 code analyzer. It contains recommendations for use of the library as well as explores the peculiarities of libraries built on templates.

    Improving Application Quality with Windows Error Reporting

    Leveraging Windows Error Reporting (WER) to use Microsoft's existing infrastructure for providing end users with patches and workarounds, a critical aspect of the application life-cycle management.

    About size_t and ptrdiff_t

    The article will help the readers understand what size_t and ptrdiff_t types are, what they are used for and when they must be used. The article will be interesting for those developers who begin creation of 64-bit applications where use of size_t and ptrdiff_t types provides high performance, possibility to operate large data sizes and portability between different platforms.

    Easy C++ - Delegates / Generic Properties / Closures / Thunks

    Implement delegates in C++ (which normally most of C++ compilers don't support) in a way that is really easy and that is cross-compiler compatible.

    Combinations in C++

    Learn about a simple algorithm to find combinations systematically using C++.

    A Personal Virtual Keyboard for (nearly) Every Keyboard

    Generate multiple (on-screen)Virtual Keyboards to include into your portable application via a DLL, so that your users can take theirlanguage/keyboard with them on their travels, even if the PC they use does not have their home keyboard installed.

    Permutations in C++

    The technique of finding permutations also provides source code for the recursive implementation. Also, learn how to use the STL template function next_permutation().

    Opening Modal Managed Windows from MFC

    This article explains how one can use WPF and Windows Forms windows from native code as modal windows, and what are the problems that can arise and what are the solutions.

    Five Cents on Arithmetic Encoding

    Learn about a classical arithmetic compression implementation (CACM) optimization.

    C++ Resource Management with shared_ptr

    Correctly managing the release of heap-allocated memory and other resources has been one of the great challenges of C and C++ development for decades. The new shared_ptr class, shipping with Visual Studio 2008 SP1 and Visual Studio 2010, makes dealing with resource management dramatically simpler.

    Linear Search based algorithm for Mth Lexicographic ordering of Mathematical Permutation and Combina

    Algorithms to compute the M-th lexicographic ordering of a permutation or combination and the inverse problem of the rank of a given permutation or sequence.

    Using WPF with Managed C++

    Discuss on WPF using Managed C++. Review a sample loan amortization program.

    CWinAPIException

    MFC-extension class for handling Windows API errors

    A Case study on MFC

    MFC Analysis with CppDepend.

    TIP: Using Unions for Manipulating Bits

    See how to set up a single bit!

    BOOST Multi-Index Container and Transaction Storage

    Learn how to implement s multi-index collection.

    Visual Modeling of Complex Reactive Systems

    Check out this commercial-grade cross-platform Harel UML StateChart open-source application framework named StateWizard for concurrent, distributed, and real-time reactive system development with simplicity, efficiency, and scalability.

    STL and BOOST Parsing Iterators

    Discover an example of a parsing iterator. You'll find that the BOOST library provides convenient tools for an efficient iterator implementation, specifically, the boost::iterator_facade class.

    Pointer-to-Pointer and Reference-to-Pointer

    Learn the reason behind using pointer-to-pointer and reference-to-pointer to modify a pointer passed to a function, to understand their usage better.

    A Fast Version of Conway's Game of Life with Thread and DirectX Draw

    Sample code for a fast version of Conway's Game of Life with thread and DirectX draw.

    Tip: An Optimized Formula for Alpha Blending Pixels

    Discover how to optimize by simplifying the formula.

    Permutations in C++, Part 2

    Speed up the work of finding permutations among different processors.

    Combinations in C++, Part 2

    Discover four new algorithms for finding combinations.

    TIP: Be Careful with Dummy Reference Arguments

    Reference (output) arguments could be disastrous sometimes. Learn how to avoid these problems.

    A Multidevice ASIO Output Plugin for WinAMP

    Explore a C++ replacement of the official ASIO SDK that supports multiple ASIO devices put to the test in a tiny WinAMP output DLL.

    Exploring the New MSBuild Features for Visual C++ 2010

    MSBuild is the build platform that Microsoft is using across all developer and related tools moving forward. Visual C++ is the last major compiler offering from Microsoft to move onto the MSBuild platform, with the Visual C++ 2010 release using MSBuild as its native project format. Explore the MSBuild basics from a C++ perspective, and see how it can improve your build process.