background preloader

Bjarne Stroustrup's Homepage

Bjarne Stroustrup's Homepage
Morgan Stanley | Columbia University | Texas A&M University home | C++ | FAQ | technical FAQ | C++11 FAQ | publications | TC++PL | Tour++ | Programming | D&E | bio | interviews | applications | glossary | compilers I'm a Managing Director in the technology division of Morgan Stanley in New York City, a Visiting Professor in Computer Science at Columbia University, and a Distinguished Research Professor in Computer Science at Texas A&M University. I designed and implemented the C++ programming language. To make C++ a stable and up-to-date base for real-world software development, I stuck with its ISO standards effort for 20+ years (so far). Writings:

Free C / C++ Compilers and Interpreters C is a general purpose procedural programming language that is fairly easy to learn (in that it doesn't have many built-in features to memorize) but is nonetheless sufficiently expressive that it can be used to build any sort of computer program, including whole operating systems like Linux. C++ is a general purpose object-oriented programming language that was originally created as a superset of C (although nowadays the two languages have developed in different directions so that this is no longer strictly true). These two programming languages, C and C++, are probably among the most popular languages used to write programs. This page lists numerous free C and C++ compilers, cross-compilers and interpreters for a wide variety of operating systems on PCs, Macs and other computers. MinGW-w64

The Assignment Operator Revisited The Assignment Operator Revisited by Richard Gillam Advisory Software Engineer, Text & International IBM Center for Java Technology–Silicon Valley If you think you know it all in the C++ world, it must mean you’re not talking to your colleagues very much. If I had any pretensions to knowing it all when I wrote my assignment-operator article ("The Anatomy of the Assignment Operator," C++ Report, Nov/Dec 1997), they didn’t last long afterwards.

on Thomas Pynchon's Mason and Dixon, Part 3 [includes Topics and a Map] Large conclusions seem inappropriate for this present stage of earliness in our reception of this wonder-filled new gift from Pynchon. We need to keep our discussions as open and wide-ranging and undogmatic as possible, to place the novel's comic and tragic world views in continual juxtaposition. We need to keep our humility and our sense of humor about us as well, even as we try for readings as ambitious as the novel clearly is.

Roadmap for Metro style apps using C++ Here are key resources to help you get started with using C++ (including Visual C++ component extensions (C++/CX)) to develop Windows Store apps. This is not a comprehensive list of all of the features or available resources. Some topics listed below are specific to C++, and some are not specific to any single programming language. An introduction to C++ Traits - Iceweasel It is not uncommon to see different pieces of code that have basically the same structure, but contain variation in the details. Ideally we would be able to reuse the structure, and factor out the variations. In 'C' this might be done by using function pointers, as in the C Standard Library qsort function or in C++ by using virtual functions. Unfortunately this differed to runtime what is known at compile time, and became with a runtime overhead.

Bermondsey to Borough My second urban wander last week was from Bermondsey to Borough, when I was fortunate enough to be travelling back from docklands towards the city around 5pm, with time to spare to jump off the tube early and continue at least some of my journey on foot. I chose Bermondsey as I had a loose idea that I might find the road that featured in the BBC TV series/book The Secret History of Our Streets: London but as I'd not properly prepared for this I had no recollection of what it was called or where it was ... for future reference I it's Reverdy Road. Instead however I drifted westwards from Bermondsey tube station, in the vague direction of home, but with no real idea where I was going or what I planned to see.

Error and Exception Handling - Iceweasel References The following paper is a good introduction to some of the issues of writing robust generic components: D. Abrahams: ``Exception Safety in Generic Components'', originally published in M. Jazayeri, R. Loos, D. why's (poignant) guide to ruby Read This Paragraph At my local Barnes and Noble, there is a huge wall of Java books just waiting to tip over and crush me one day. And one day it will. Principles and Practice Using C++ Modified June 8, 2014 This is the support site for Stroustrup: "Programming: Principles and Practice using C++ (Second Edition)" Addison-Wesley 2014, ISBN 978-0-321-99278-9. support for the first edition of PPP This book is aimed at beginners taking a programming course and people learning C++ as self study. For details, see these samples:

Debugging Native Memory Leaks, Part 1: LeakDiag « Ofek's Visual C++ stuff - Iceweasel Leaking memory is probably the single most painful aspect of native code – its the reason managed was ever born. Sadly, this is useful only in the handful of cases where the code allocates directly. What if the offending allocation is performed via some common container routine? Even worse – what if the leak is properly de-allocated in destructors at shutdown time? The CRT support would be of no use.

A Game To Educate Kids About The Future Of Cities And Energy Looking a bit like the Sims video game, Plan It Green is a new online challenge that aims to teach kids about the realities of city development, and energy management. Aimed at middle schoolers, players get to be mayor for a day, and make decisions about where to build houses and lay down roads, whether to use revenue to construct parks, bike paths, organic farms and wildlife preserves, and how to balance out dirtier forms of energy production with cleaner, but less dependable, renewable power. Developed jointly by The Center For Science (a network of science centers), National Geographic, and General Electric, it is free and open for play now. There is a useful tutorial, and an explanatory video (see below). "By having kids be the maker of their own city, they have to make choices," says Meg Chapman, a communications director at GE.

Debugging Memory Leaks, Part 2: CRT support « Ofek's Visual C++ stuff - Iceweasel Problem and Immediate Solution If you’re developing MFC apps, the way you’ll usually notice any leaks is by terminating your app and seeing the following in the output window: Detected memory leaks! Dumping objects -> C:\myfile.cpp(20): {130} normal block at 0x00780E80, 64 bytes long. Data: < > CD CD CD CD CD CD CD CD CD CD CD CD CD CD CD CD Object dump complete. the {130} is emphasized on purpose – it is the serial number of the leaking allocation.

Distributed energy: Driving the ghosts out of the machine The folks over at Platts have a feature on distributed energy called “the ghost in the machine.” That title is ironic, for reasons I’ll get into in a minute. Still, it’s great to see outfits like Platts taking note of this stuff. Using Vector and Deque What is the difference between vector and deque? When should you use each one? And how can you properly shrink such containers when you no longer need their full capacity? These answers and more, as we consider news updates from the standards front.