Quantcast
Channel: Dr. Dobb's C/C++ Articles
Browsing all 123 articles
Browse latest View live

The New C Standard Explored

C11 specifies many security features that require minimal changes to existing code. They greatly reduce unexpected behavior and prevent many kinds of common attacks.

View Article


Extracting Function Parameter and Return Types in C++

Using the metaprogramming capabilities of C++ and generic programming, it's possible to create an elegant parser of parameter types. Command-line interpreters, parsers, and syntax checkers are among...

View Article


The Design of LLVM

In the last five years, LLVM has evolved from an academic project to the universal back-end of C, C++, and Objective C compilers. The key to its success is its performance and adaptability, both of...

View Article

C's New Ease of Use and How the Language Compares with C++

C11 adds useful, handy features that match some of the additions to C++. However, key divergences mean that a few C11 features have no counterparts in C++.

View Article

Easy GPU Parallelism with OpenACC

An emerging standard uses pragmas to move parallel computations in C/C++ and Fortran to the GPU

View Article


Scope Regions in C++

Many programmers have difficulty distinguishing the concepts of scope, storage allocation, and linkage in C++ due to similarities of the concepts in C. Dan begins the process of sorting them all out.

View Article

Anatomy of a Stack Smashing Attack and How GCC Prevents It

The use of special prologues and epilogues around functions can easily detect attacks that rely on stack overflows. Here is how "stack smashing" is actually performed and how its occurrence is detected.

View Article

Writing a Bi-Endian Compiler

The techniques for writing a Bi-Endian compiler for porting byte order-sensitive applications. Plus, a look at its application and benchmarks for its performance.

View Article


The Best of the First Half

The most popular articles on Dr. Dobb's for the first half of the year, sprinkled with editors' choices of particularly meritorious pieces. Enjoy!

View Article


Interview with Alan Kay

The pioneer of object-orientation, co-designer of Smalltalk, and UI luminary opines on programming, browsers, objects, the illusion of patterns, and how Socrates could still make it to heaven.

View Article

Fixing the enum in C#

A small reusable superclass adds handy methods that make enums far more useful and flexible

View Article

Improving Futures and Callbacks in C++ To Avoid Synching by Waiting

In C++, futures are a great way of decomposing a program into concurrent parts, but a poor way of composing those parts into a responsive and scalable program. Microsoft's Parallel Pattern Library...

View Article

Deploying Static Analysis

Static analysis is a cheap and easy way to find bugs, but it offers important challenges that tend to be more political than technical.

View Article


Go Tutorial: Object Orientation and Go's Special Data Types

In this second installment of our five-week course on the Go language, we explore Go's unusual approach to object orientation, its special built-in object types, the syntax for multiple return values,...

View Article

The Comparative Productivity of Programming Languages

A database comparing 6,000 projects shows that the choice of programming language has a significant impact on project schedule.

View Article


Saying No To Properties

Properties are rarely necessary and, in many cases, they make your classes hard to extend and difficult to debug. And they make code much larger and more complex than it needs to be.

View Article

Go Introduction: How Go Handles Objects

Go's unique approach to OO steps around many problems found in other languages by preferring composition to inheritance.

View Article


Longing For Code Correctness

The longer I write code, the more I yearn for code correctness. Despite the work this extra step presents, commercial ventures, especially Wall Street, would do well to embrace it.

View Article

The OpenACC Execution Model

In this second part of the introduction to OpenACC — the OpenMP-style library for GPU programming — the execution model is explained and samples are benchmarked against straight, OpenMP parallelism.

View Article

Qt 5 Beta: A Developer's Tour

The just-released Qt5 beta shows the library and toolkit thriving and continuing to add capabilities, while simplifying development even more.

View Article
Browsing all 123 articles
Browse latest View live