BogoToBogo
  • Home
  • About
  • Big Data
  • Machine Learning
  • AngularJS
  • Python
  • C++
  • go
  • DevOps
  • Kubernetes
  • Algorithms
  • More...
    • Qt 5
    • Linux
    • FFmpeg
    • Matlab
    • Django 1.8
    • Ruby On Rails
    • HTML5 & CSS

Articles On C++

cplusplus_icon.png




Bookmark and Share





bogotobogo.com site search:




Flint - Facebook

...

A lint program typically scans software code to look for issues that a compiler does not catch, a process called static code analysis. Linters can be handy for enforcing organizational best practices in code development, or to look for code patterns that could cause security or performance issues.

Although there are a number of static analysis programs already available for C++, Facebook found them mostly unsuitable for its own needs. Many were too slow or weren't updated to understand C++11, which Facebook is in the process of adopting. Flint reviews code and flags any potential issues in Facebook's code review system, called Phabricator.

Facebook removes C++ lint with new analysis tool Feb 26, 2014.

C++ coming back into the mainstream with more specs, more often
...

C++, the systems programming language, is one of the most important programming languages in the world. It's used to build important system infrastructure (operating system kernels tend still to be C, but the systems built on those kernels are often C++), and one of the first choices for development of fast, efficient software.


It's also emerging from a dark period in its history. The first version of the standard was delivered in 1998. The next didn't get finished until early 2011, after a painful and drawn-out process that saw the committee going down blind alleys and suffering political infighting. C++ has also suffered from being more than a little uncool; safe environments like Java, .NET, Python, Ruby, Node.js and more have all won considerable mindshare, and have become the go-to tools for a large class of applications, taking advantage of C++'s 13-year failure to add necessary, modern features in a timely manner.

But C++'s future is looking a lot brighter. Standards will be updated sooner, with the next major release scheduled for 2017, and a minor release in 2014. The C++ working group has created a number of subgroups to work on subjects as diverse as concurrency, file system access, and networking, and these groups will develop specifications of their own, alongside the standards, to extend the versatility of standard C++.

...

Ars Technica, Nov, 2012





C++ Interpreter

Paul Thompson has built a C++ script that produces snowballs - poems where every line is a single word, with each successive word one letter longer than its predecessor (more exactly, "Chaterism" Where the length of words in a phrase or sentence increase or decrease in a uniform, mathematical way as in "I am the best Greek bowler running", or "hindering whatever tactics appear").

Check his blog.

"Chaterism" is one of the literary technique known as Constrained writing.





The Rise and Fall of Languages in 2012
...

The primary native languages, C and C++, remained effectively the same, rising or falling slightly in the various surveys. The numbers undermine the hope articulated by Microsoft's Herb Sutter that we would see a C++ "renaissance." Google Trends for the last five years shows a steady drop in queries about C++:

Most established languages see a downtrend in Google queries over the last five years, so the decline is not inherently damning - although if a renaissance were afoot, you'd expect to see some upturn. Other indicators of the language (such as changed LOCs in OSS) are, in fact, holding steady. Some even have increased slightly. I think that part of Sutter's hope of renewal was based on C++11 being finalized and the expectation of greater adoption of the language in conjunction with the release of Windows 8. However, I can see nothing that suggests this is occurring. In fact, I can find no evidence that C++ is breaking into new niches at a pace that will affect the language's overall numbers. For that to happen, it would need to emerge as a primary language in one of today's busiest sectors: mobile, or the cloud, or big data. Time will tell, but I feel comfortable projecting that C++ will continue to grow in its traditional niches and will advance at the same rate as those niches grow.

...
- Jan., 2013 Dr.Dobb's



When and Why You Should Use C++

Now in its 25th year, C++ sits a little awkwardly in the modern world. It grew enormously in the late 80s and early 90s, even overcoming the Department of Defense's 1987 "Only Ada code to be used" mandate in 1997. But with the arrival of Java in the last years of the century, things became less certain and C++ looked to be becoming a legacy language like Delphi or Visual Basic.

...

The decision to use C or C++ depends on many factors, of which age is probably the most important. For very low level or embedded programs, C comes with less overhead. But for any program that does major text processing or has a more complex data model, the benefits of C++ should not be ignored.

...

C++ is still around and many of the applications that run on Windows and Linux are written in it. The entire AAA games industry, with a few multimillion dollar titles, depends on C++. I doubt any other language will ever be a good fit in that domain. The world of open source uses C++ extensively and thanks to the free Microsoft C++ Compiler, Windows is considered a viable platform. But while languages such as Python don't match it for performance, but they are good enough and far easier to learn.

SlashDot, July 25, 2013





C++ run on Chrome

The Chrome browser includes the Chrome App Launcher for easy access to web and native applications from Google's Chrome Web Store. Some of these are simple web apps - shortcuts, even to standard web pages - while others are packaged HTML5 applications that can run outside of the browser on a device with Chrome installed. And others are Native Client apps: Software written in C or C++ that run on their own if the Chrome browser is installed.

Still don't believe Google Chrome is a platform? This video will change your mind - June 21, 2013 from GigaOM.

Also, related article How Google plans to rule the computing world through Chrome .

Google site, Native Client - Run your native code on the web..





How to Pick the Right Programming Language

During the course of every coding project, a software developer must make dozens of decisions. Sometimes this involves solving a problem unique to a particular domain space or a particular architectural issue. Other times it's about which language is best for a job. That is actually one of the most critical pieces of getting a project right.

How to Pick the Right Programming Language - MAY. 22, 2013 - from Mashable.





Asm.js, WebRTC, and C++

Asm.js is another technology that has the potential to be a game changer. As we explained in more detail in March, asm.js is a subset of JavaScript that runs with near-native speed in the browser. It is, as Mozilla's CTO Brendan Eich explained it to me back then, a sub-language that "effectively describes a safe virtual machine for memory-unsafe languages like C or C++." Thanks to tools like Emscripten, which can compile C and C++ code, asm.js developers can also use it to convert their C and C++ programs to run in the browser. Asm.js currently gets to within 2x of native performance, and the team is working hard to speed it up even more.

Firefox 22 Launches With Built-In Asm.js And WebRTC Support - June. 25, 2013 - from TechCrunch.





Visual Studio 2013

Visual Studio 2013 Preview (internally called VS12) and .NET Framework 4.5.1 have been made available in June. Though released sooner than expected, it provides new features and improvements over Visual Studio 2012. In this article I will discuss some of the changes for native development. A more rigorous list of features is available in MSDN. Visual Studio 2013 can be downloaded from here.

C++:
There are new C++11 and even C++14 compiler and library features now supported (some of them were available in the November 2012 CTP for Visual Studio 2012).

What's new in Visual Studio 2013 for native development - Aug 6, 2013 - from codeproject.com.



From C++ to She++

For aspiring girl technologists, young women still discovering their unique color, sometimes the deepest inspiration flows not from luminaries--those who have already made it into Forbes lists, newspapers, onto the TED stage--but from our peers: other young women who have proven with their grit and their creativity that they can dream, and act, powerfully. These are fellow students who demonstrate that their "extraordinary" is grounded in "ordinary." Peers who pursue their vision so passionately that their sheer conviction recasts it as our own.

Note: Actually, this is not an article directly related to C++.
From C++ to She++ : Changing the Language of Silicon Valley - Feb 27, 2013 - from Huffingtonpost.





Android NDK, Revision 9 (July 2013)

The NDK is a toolset that allows you to implement parts of your app using native-code languages such as C and C++. For certain types of apps, this can be helpful so you can reuse existing code libraries written in these languages, but most apps do not need the Android NDK.

Before downloading the NDK, you should understand that the NDK will not benefit most apps. As a developer, you need to balance its benefits against its drawbacks. Notably, using native code on Android generally does not result in a noticable performance improvement, but it always increases your app complexity. In general, you should only use the NDK if it is essential to your app-never because you simply prefer to program in C/C++.

Android NDK, Revision 9 - July, 2013 - http://developer.android.com/.





Ph.D. / Golden Gate Ave, San Francisco / Seoul National Univ / Carnegie Mellon / UC Berkeley / DevOps / Deep Learning / Visualization

YouTubeMy YouTube channel

Sponsor Open Source development activities and free contents for everyone.

Thank you.

- K Hong






Sponsor Open Source development activities and free contents for everyone.

Thank you.

- K Hong






C++ Tutorials

C++ Home

Algorithms & Data Structures in C++ ...

Application (UI) - using Windows Forms (Visual Studio 2013/2012)

auto_ptr

Binary Tree Example Code

Blackjack with Qt

Boost - shared_ptr, weak_ptr, mpl, lambda, etc.

Boost.Asio (Socket Programming - Asynchronous TCP/IP)...

Classes and Structs

Constructor

C++11(C++0x): rvalue references, move constructor, and lambda, etc.

C++ API Testing

C++ Keywords - const, volatile, etc.

Debugging Crash & Memory Leak

Design Patterns in C++ ...

Dynamic Cast Operator

Eclipse CDT / JNI (Java Native Interface) / MinGW

Embedded Systems Programming I - Introduction

Embedded Systems Programming II - gcc ARM Toolchain and Simple Code on Ubuntu and Fedora

Embedded Systems Programming III - Eclipse CDT Plugin for gcc ARM Toolchain

Exceptions

Friend Functions and Friend Classes

fstream: input & output

Function Overloading

Functors (Function Objects) I - Introduction

Functors (Function Objects) II - Converting function to functor

Functors (Function Objects) - General



Git and GitHub Express...

GTest (Google Unit Test) with Visual Studio 2012

Inheritance & Virtual Inheritance (multiple inheritance)

Libraries - Static, Shared (Dynamic)

Linked List Basics

Linked List Examples

make & CMake

make (gnu)

Memory Allocation

Multi-Threaded Programming - Terminology - Semaphore, Mutex, Priority Inversion etc.

Multi-Threaded Programming II - Native Thread for Win32 (A)

Multi-Threaded Programming II - Native Thread for Win32 (B)

Multi-Threaded Programming II - Native Thread for Win32 (C)

Multi-Threaded Programming II - C++ Thread for Win32

Multi-Threaded Programming III - C/C++ Class Thread for Pthreads

MultiThreading/Parallel Programming - IPC

Multi-Threaded Programming with C++11 Part A (start, join(), detach(), and ownership)

Multi-Threaded Programming with C++11 Part B (Sharing Data - mutex, and race conditions, and deadlock)

Multithread Debugging

Object Returning

Object Slicing and Virtual Table

OpenCV with C++

Operator Overloading I

Operator Overloading II - self assignment

Pass by Value vs. Pass by Reference

Pointers

Pointers II - void pointers & arrays

Pointers III - pointer to function & multi-dimensional arrays

Preprocessor - Macro

Private Inheritance

Python & C++ with SIP

(Pseudo)-random numbers in C++

References for Built-in Types

Socket - Server & Client

Socket - Server & Client 2

Socket - Server & Client 3

Socket - Server & Client with Qt (Asynchronous / Multithreading / ThreadPool etc.)

Stack Unwinding

Standard Template Library (STL) I - Vector & List

Standard Template Library (STL) II - Maps

Standard Template Library (STL) II - unordered_map

Standard Template Library (STL) II - Sets

Standard Template Library (STL) III - Iterators

Standard Template Library (STL) IV - Algorithms

Standard Template Library (STL) V - Function Objects

Static Variables and Static Class Members

String

String II - sstream etc.

Taste of Assembly

Templates

Template Specialization

Template Specialization - Traits

Template Implementation & Compiler (.h or .cpp?)

The this Pointer

Type Cast Operators

Upcasting and Downcasting

Virtual Destructor & boost::shared_ptr

Virtual Functions



Programming Questions and Solutions ↓

Strings and Arrays

Linked List

Recursion

Bit Manipulation

Small Programs (string, memory functions etc.)

Math & Probability

Multithreading

140 Questions by Google



Qt 5 EXPRESS...

Win32 DLL ...

Articles On C++

What's new in C++11...

C++11 Threads EXPRESS...

Go Tutorial

OpenCV...








Contact

BogoToBogo
contactus@bogotobogo.com

Follow Bogotobogo

About Us

contactus@bogotobogo.com

YouTubeMy YouTube channel
Pacific Ave, San Francisco, CA 94115

Pacific Ave, San Francisco, CA 94115

Copyright © 2024, bogotobogo
Design: Web Master