
C++ Language Quick Guide - TheVip
http://viptechworld.blogspot.com/2017/05/cpp-quick-guide-by-vtw.html
======
copperx
I just want to point out that Stroustrup's A Tour Of C++ is an excellent quick
guide and it does include C++11 features.

~~~
bstamour
I've found the C++ Standard Library 2nd Edition to be an excellent companion
to Stroustrup's Tour of C++. It does a good job of preventing you from
reinventing wheels that others have already built for you.

------
bstamour
Please update the section on storage classes. Auto is no longer a storage
class, but a keyword for automatic type deduction. Also, register has recently
been deprecated as well, if I remember correctly.

~~~
Impossible
This appears to be a C++03 guide, as it doesn't mention any C++11 features (no
range based for). To be fair it is definitely a "quick" guide, and doesn't
cover enough to actually be productive in C++ (pointers\memory allocation and
references are missing...), but you're right that auto and register are the
only things that appear to be explicitly wrong, instead of wrong by omission.

~~~
stinos
_doesn 't cover enough to actually be productive_

Well probably it would be sufficient to write simple programs. But maybe this
guide is just _too_ quick in that it just covers some basic syntax but leaves
out a lot of goodies which actual programs use (no containers/algorithms at
all, indeed no C++11 and beyond which is imo a shame for any recent C++ guide
- there's not even any mentioning of it), doesn't adhere to current best
practices (take 'double getVolume(void)': void argument has no place in C++
and should arguably be const, no error checking on stream methods) and seems
too lack crucial information (no mention of heder files, no mention of how to
get the samples compiled).

------
Cieplak
Another cool resource:

[https://github.com/rigtorp/awesome-modern-
cpp](https://github.com/rigtorp/awesome-modern-cpp)

------
GhostVII
Does this guide have anything about references? Didn't find anything about
that, but maybe I missed it, I think its a pretty important topic to cover.
Also didn't see anything about the different types of constructors.

------
alexeiz
This guide is so primitive that it cannot be called useful. It can possibly be
harmful, though, to those who don't know the language well and use this guide
as a sole source of information.

------
minipci1321
> C++ is a superset of C, and that virtually any legal C program is a legal
> C++ program.

This is not true. One example, void* pointers are not automatically converted
to "narrower" types in C++ as they are in C.

~~~
saghm
Syntactically, C++ is a superset of C though, right? I can't think of any C
syntax that's not valid C++, but I'm not exactly am expert in either

~~~
minipci1321
> I can't think of any C syntax that's not valid C++,

enum toto { a = 1 }; enum toto b = 1;

Fixing versions of both standards could bring in more examples (like trailing
comma in enums and use of the names reserved in C++, by the C code).

Overall, ironically, as typing is stronger in C++ (which I agree is a non-
syntactic change), poor C code (using lots of unjustified casts), will require
less modifications to be compiled as C++.

~~~
saghm
Thanks for the example!

------
blt
This looks more like an exam review study guide than an attempt to teach the
language.

------
PopsiclePete
This is kind of ... crappy. Sorry. It might have been semi-useful in 2004 or
so, but now...woefully outdated and inadequate to get anyone up-to-speed. I'd
say it's actually harmful.

------
dotdi
Call me nitpicky, but you lost me at `Box Box1;`

Instance names should be lowercase, for God's sake.

