Learning C++

Should I use this book to learn C++ AND programming in general? I do C++ at school but I wanbt to get better at it but also want to learn other languages like C# and Java/Kotlin.

Attached: 51j679vpDGL._SX406_BO1,204,203,200_.jpg (408x500, 41K)

Go to learncpp.com and learn the basics.
Then read the Effective C++ books and you should be good to go.

maybe

learncpp.com is a discouraged resource.
and what's the difference between Effective C++ and Effective Modern C++?

Second one is modern imho.

The first few chapters offer a good mixture between C++ syntax, general programming advice and small exercises to practice those two things.
But that changes starting with the calculator chapter. The exercises throughout each chapter mostly disappear. Instead of
>problem -> solution -> exercise to practice solution -> next problem
you get
>problem -> first wrong attempt -> reevaluation of the problem -> second wrong attempt (although closer to what we want) -> complex solution (easier solution can be found a few chapters down the road) -> next problem
or they mention no problems and just explain you some of their code snippets.

yes, C++ is top tier language
and learn C first, or you will never understand C++
also: C# is not C/C++, it is Java-level VM bloated crap

I know thst C# is different from C/C++ but just want to learn it.
Do you know some good books/course for C? i mainly find resources for C++. Is C in a Nutshell a good beginner book?

I use pic related. Its explanation and exercises suck. If you dont have any past programming experience or are willing to research you this book sucks even more. But it did help me to get better at programming. I dont like books like effective c++.

Attached: book.png (780x910, 695K)

first one is actually about C++ and the latter is only about modern features, despite it seeming like it'd actually just be a revised version of the first book

here's a guide for it I wrote for a friend a few weeks ago, not perfect but enough to start

Attached: c_crash_course.png (1056x7922, 327K)

No don't buy any starsoup book. He makes a living out of bloating the language and then writing this year's book, same as last year's but with a few changes. Fuck him.

Well, his books are massive. Do you expect him to completely re write them as discard almost everything of what he wrote? How many technical books have you written, NEET?

Learn C first. Then C++. Then Python. Then COBOL. Now, anything else is just icing on the cake.

Attached: anime_wink.jpg (1280x720, 72K)

That's a pretty cool book. I also used it.

>learn C first
I've heard this is a bad idea though

It's the opposite, it instills good practices.

> a declaration is a statement in which a value is assigned to something
wrong

i have a 1200 pages long c++ bible by stroustroup. and i read 900 pages of it so you don't have to.
Go with Meyers and Alexandrescu.

im working for google, facebook and apple at the same time. can confirm its modern

>I'm working for botnet.
Why?

ye you're right, noticed that after finishing but never got around to updating the image. should've mentioned the declaration/definition distinction

> get Starting Out With C++
> finish it
> get C++ primer
> work on the more advanced stuff
> get C++ FAQs by Cline
> finish it
You are now leet

how about this user

Attached: c_crash_course.png (1056x7922, 327K)

I have this book. It's kind of bad except for its coverage of the STL. And it uses FTLK in all of its GUI examples.

definition is not a declaration. But variable may be declared and defined at the same time.

Description of ptrs is ok but doesn't differ much from 95% of generalisms found on internet. Graphical visualization was what worked for me.

stack is not used for static allocation.

Good advice that I wish somebody gave me when I started is: USE address sanitizer right away. Always. Catch errors early while you still learn, not later when you *think* you've learned and now you have to debug an actual application (even if it's just babys first program).

In overall good work.

Classic book. I recommend

Just read The C++ Programming Language.
If you already know a oo/procedural language read A Tour of C++.
Anyone telling you otherwise is dumb.

thank you for the corrections, the pic was originally made to be like a "hey look C isn't that hard" thing for a friend of mine so admittedly it was pretty flawed. the thing about the stack was a pretty big fuck up though

>definition is not a declaration. But variable may be declared and defined at the same time.
my b, im familiar with the distinction but the idea was to cover it more in-depth in the translation units/headers section to make the difference more clear

Read tour of c++ first.

sure, that's just a nitpick. But if somebody learns with this, actually stick to coding and have to make disputes later onhe'll get caught in simple mistakes, and programmers are dicks.

from my own internship experience:
>several cohesive sentences with intro data and question why a sql 'function' behaves odd causing bananas.
the only thing that i heard from a tech lead was:
>user, i have no idea what problem are you describing, there are no functions in the base, only procedures

So you know, I point out this stuff when it comes to training material

I think that second part is actually more valuable for a beginner programmer than the first.
The practice of iterating over a solution is something more programmers should do.

learn C first. no joke. see pic related. read that book. it's the most readable "learn to program" book ever written and its WAY powerful just after reading that. learn it and get exactly what is going on in that book first.

then read that exact book in your screenshot. it builds off k&r but if you don't have k&r first you won't get it why it is doing what it's doing. plus after you have k&r if you disagree with any c++ isms you can always reimplement something on your own via your knowledge from k&r (and anyway k&r c will still work in c++). as far as the book you posted, reminder there are two books by him, i forget which one of the two that is. but you'll want to read both. read all 3 cover to cover and you'll be top tier in no time.
to get practice and test skills along the way, complete programming exercises at end of the chapters in stroustrup, and complete stanford cs106B / cs107 programming examples.
btw stanford sequence follows that exact sequence of learning. youtube videos will follow along with your learning.
this is what I did, and I know enough to be dangerous and anyway k&r knowledge will give you enough of low level knowledge to make yourself able to jump into any other language pretty easily.
but yeah start with k&r first, it's short and you won't regret it.

Attached: k&r.png (278x359, 32K)

not OP but Thank user

Learning a programming language and learning how to program are two entirely different subjects. That's like asking if I memorize the dictionary will that help me learn how to write books?

What kind of stack work can you do with C though?

i've found it immensely useful mostly for just fixing shitty code i find. miscellaneous type things, when software goes wrong or starts bugging out with those three books I can help figure out what went wrong.
for my own part, i'm in statistics related type things. so i'm in R , ipython, etc. a lot. both rely on various c modules to execute math functions, and both routinely use libraries with bad code that needs fixing or optimizing. if something goes wrong i can just go in and fix it myself without having to depend on super buggy high level imports / packages and etc. tl;dr mostly for fixing dependency related issues in practice. but theoretically for literally everything. for me it's mostly a side type gig related to main task of keeping statistics related things up to date and fast.