Modern C++


SQLite Queries and Primary Keys

Learn about SQLite database engine internals so you can simplify your code and improve the performance of your applications.

SQLite Performance and Prepared Statements

SQLite is a tremendously useful database for C++ developers. In this follow-up, Kenny Kerr shows various techniques for improving performance even further.

Using SQLite with Modern C++

Incorporate the free database library with these easy, step-by-step directions.

Long Filenames in Windows 8

Do you hate the 259-character filename limit in some Windows file systems? So does Kenny. Here's a way to eliminate it and free your application and users from the restriction.

Applying the Range-for Statement in C++

Want to iterate through a sequence with C++11? If so, the easiest way will be to use the range-for statement – Kenny Kerr shows you how.

An API for Simple HTTP Requests

Yes, sometimes you need sophisticated libraries that handle HTTP requests asynchronously, but in other situations that can be overkill. An old Internet Explorer API may have a solution.

Resource Management in the Windows API

The use of constructor/destructor pairs for resource management is the most important feature that distinguishes C++ from its predecessor.

Using the C++ Spell Checking API

Learn how to add spell checking to your applications.

C++ Introspection

C++ has several methods -- including the <type_traits> header and runtime type information -- to help your application make type-based decisions.

Documenting C++ APIs with Doxygen

Documenting your code is a critical part of development, but too many developers pay too little attention to proper commenting. C++ devs have a tool that can help.

Unit Testing With C++

Unit testing is a fine-grained technique for finding bugs. Here's how to apply it to C++ projects.

Going Mobile with C++

A survey of the emerging mobile landscape, and how C++ fits in.

C++ Generics: Meta-Programming and Variadic Templates

A meta-program is "executed" as the result of template instantiation (therefore, before compiled code is produced). Meta-program results are then compiled and merged into object code, including any back-end optimization.

C++ Templates: Not a General Case of Generics

Diego Dagum provides an overview of C++ templates, and how its generics differ from C# and Java.

Improving C++ Encapsulation with the Pimpl Idiom

.NET and Java developers are perplexed about the indiscreet way C++ discloses private class details. Pimpl (pointer-to-implementation) solves this problem by keeping secrets hidden from peepers.

Weak Pointers and Circular References in C++ 11

In both .NET and Java, the garbage collector is smart enough to detect and release circular references. Dealing with circular references in C++ isn't as simple.

Resource Management in C++

RAII, or "Resource Acquisition Is Initialization", has become a standard C++ coding practice. Here's why.

More C++ Classes: Copy and Move Semantics

From a purely object-oriented perspective, "copy semantics" is the right way to preserve control over object ownership. But in those scenarios where ownership becomes irrelevant, C++11 "move semantics" is an efficient complement.

What .NET Developers Must Know about C++ Classes

C++ does things differently than C# or Visual Basic, especially when it comes to class construction. Take this tour to learn about the differences.

Using Lambda Expressions for Shorter, More Readable C++ Code

Even for C++'s ancestor, C, one of its most valued features was the ability to declare functions as parameters for other functions or procedures

.NET Insight

Sign up for our newsletter.

I agree to this site's Privacy Policy.