Today's Question:  What does your personal desk look like?        GIVE A SHOUT

SEARCH KEYWORD -- std



  C++ : string beginWith and endWith

C++ is an very powerful programming language. It is efficient and flexible. When writing C++ programs, we may often need to process strings and often we need to check whether a string begin with some substring or end with some substring. We can use following functions to ahieve these:     static bool beginWith(const std::string str,const std::string needle){        return (!str.compare(0,needle.length(),needle));    }    ...

   C++,beginWith,endWith,     2012-08-31 06:53:44

  Custom C++ exception class creation

In standard C++, we can use try catch to catch and exception when something goes wrong. These are some built in exception support in C++. By including the #include , we can now catch exceptions in C++ programs. This actually helps us on debugging our code and reduce the maintenance work.However sometimes if we want to create our own custom exception class. What should we do?We should include the #include line and then extend the exception class and implement some methods as you like. The genera...

   C++,std,exception,custom exception,implementation     2012-03-04 09:58:18

  Getting started with C++ TR1 regular expressions

Overview This article is written for the benefit of someone familiar with regular expressions but not with the use of regular expressions in C++ via the TR1 (C++ Standards Committee Technical Report 1) extensions. Comparisons will be made with Perl for those familiar with Perl, though no knowledge of Perl is required. The focus is not on the syntax of regular expressions per se but rather how to use regular expressions to search for patterns and make replacements. Support for TR1 ext...

   Regular expression,Replace,TR1,Extension     2011-08-14 07:25:20

  Convert number to string in C++

Prior to C++11, there is no built-in function in C++ standard library which can be used to convert numbers such as interger and double number to string.  There are many ways which can convert number to string. Since C++ is C compatible, we can use itoa() function to convert an integer to C style string. But this one can only convert integer to string, not double. For different types of numbers, we need to use different functions. string s = string(itoa(a)); Actually, we can also use strings...

   C++,conversion,number,string     2012-08-14 15:52:48

  Facebook open sources its C++ library named Folly

Recently, Facebook open sourced its low level C++ function library for its internal use named Folly. Folly is an open sourced C++11 component library, it provides functions similar to what boost and std libraries provide, including string, vector and memory allocation, bit operation etc, to fulfill large scale high performance requirements.Currently Folly is tested with gcc4.6 on some 64 bit systems such as Fedora 17, Ubuntu 12.04 and Debian wheezy, it may also be OK on other 64 bit platforms wi...

   Facebook,Folly,C++,open source     2012-06-05 08:31:12

  sorting in C++: 3 times faster than C.

If you don't know C++ well, you might be surprised how fast C++ can be sometimes. This is especially true when code involved is small, because then inlining - which is what C++ is very good at - and templating, which makes excessive inlining possible in the first place - has the most effect. The following code compares C and C++ sorting:  #include <iostream>#include <algorithm>#include <vector>#include "stop_watch.inl" // see https://...

   C++,Sorting,C,faster,efficiency     2012-03-17 12:59:45

  Implementation of Tower of Hanoi

The Tower of Hanoi is a mathematical game or puzzle. It consists of three rods, and a number of disks of different sizes which can slide onto any rod. The puzzle starts with the disks in a neat stack in ascending order of size on one rod, the smallest at the top, thus making a conical shape. The objective of the puzzle is to move the entire stack to another rod, obeying the following rules: Only one disk may be moved at a time. Each move consists of taking the upper disk fro...

   Algorithm,Tower of Hanoi     2012-08-20 02:15:55

  Understanding lvalues and rvalues in C and C++

The terms lvalue and rvalue are not something one runs into often in C/C++ programming, but when one does, it’s usually not immediately clear what they mean. The most common place to run into these terms are in compiler error & warning messages. For example, compiling the following with gcc: int foo() {return 2;} int main() { foo() = 2; return 0; } You get: test.c: In function 'main': test.c:8:5: error: lvalue required as left operand of assignment True, this code ...

   lvalue,rvalue,C++,locator value,elaboration     2011-12-15 07:51:38

  Eight C++ programming mistakes the compiler won’t catch

C++ is a complex language, full of subtle traps for the unwary. There is an almost infinite number of ways to screw things up. Fortunately, modern compilers are pretty good at detecting a large number of these cases and notifying the programmer via compile errors or warnings. Ultimately, any error that is compiler-detectable becomes a non-issue if properly handled, as it will be caught and fixed before the program leaves development. At worst, a compiler-detectable error results in los...

   C++,Compiler,Error detection     2012-04-08 09:55:20

  Fun With Numbers

Yesterday the NPD Group issued a report on U.S. tablet sales in the U.S., from January through October of 2011. Worth noting up front is that the numbers in this report are about sales — actual tablets sold to actual customers — not “shipments” from the factory to stores and warehouses.Much-reported on is that second-place went to HP, after its fire sale on the discontinued TouchPad. What hasn’t gotten much commentary is the extraordinarily contort...

   Tablet,iPad,TouchPad,HP,Market share,2011     2011-11-24 09:12:58