Returning an empty string : efficient way in c++

Gcc 7.1 -O3 these are all identical, godbolt.org/z/a-hc1d – jterm Apr 25 at 3:27 Original answer: Did some digging. Below is an example program and the relevant assembly: Code: Assembly: This was compiled with -std=c++11 -O2. You can see that there is quite a lot more work for the return “”; statement and comparably little for return std::string and return {}; (these … Read more

1e-9 or -1e9, which one is correct?

Neither is more correct than the other. They just represent different values. 1e-9 is 0.000000001; the minus sign applies to the exponent. -1e9 is -1000000000.0; the minus sign applies to the number itself. The e (or E) means “times 10-to-the”, so 1e9 is “one times ten to the ninth power”, and 1e-9 means “one times ten to the negative ninth power”. In mathematical scientific notation, this … Read more

How can I solve the error LNK2019: unresolved external symbol – function?

One option would be to include function.cpp in your UnitTest1 project, but that may not be the most ideal solution structure. The short answer to your problem is that when building your UnitTest1 project, the compiler and linker have no idea that function.cpp exists, and also have nothing to link that contains a definition of multiple. A way to fix this is making use … Read more

undefined reference to WinMain@16 (codeblocks)

When there’s no project, Code::Blocks only compiles and links the current file. That file, from your picture, is secrypt.cpp, which does not have a main function. In order to compile and link both source files, you’ll need to do it manually or add them to the same project. Contrary to what others are saying, using a … Read more

How to declare a global variable in C++

I know one should not use global variables but I have a need for them. I have read that any variable declared outside a function is a global variable. I have done so, but in another *.cpp file, that variable could not be found. So it was not really global. Isn’t it so that one has to … Read more

What is a dangling pointer?

A dangling pointer is a pointer that points to invalid data or to data which is not valid anymore, for example: This can occur even in stack allocated objects: The pointer returned by c_str may become invalid if the string is modified afterwards or destroyed. In your example you don’t seem to modify it, but since it’s … Read more

How do I iterate over the words of a string?

For what it’s worth, here’s another way to extract tokens from an input string, relying only on standard library facilities. It’s an example of the power and elegance behind the design of the STL. Instead of copying the extracted tokens to an output stream, one could insert them into a container, using the same generic copy algorithm. … Read more