C++ General

Hegemony edition.

Other urls found in this thread:

cplusplus.com/
cprogramming.com/tutorial/templates.html
open-std.org/jtc1/sc22/wg21/docs/papers/2017/p0707r0.pdf
twitter.com/NSFWRedditImage

>want to program in c++
>Have to overload my templates just to reverse the binary

Ugh

Why has there not been a proper replacement to C++ in all these years?

Because C++ has a hegemony over all programming languages and platforms.

because the main problem is that its really ugly, and you cant make a systems programming language with similar functionality thats not ugly so whats the point in trying

sure you could lose the C preprocessor bullshit and macros and headers and shit but those arent really the issue

The issue is the abi. creating bindings for a C++ library is a pain, unlike C it's nigh impossible to automate it

Name mangling was a mistake. hidden virtual pointers was a mistake.

I use QT like people use Boost. It just simplifies writing that.

good / bad?

Modules when?

Name mangling can be fixed with extern C.
Virtuals are gonna fuck you over though.

How come a 35 year old language has no superior alternative? What makes C++ so great?

lack of adoption by niggers

It does everything you need. Replacements which change too much like Rust alienate developers, and replacements which change too little never gain traction.

Which is sad, really. I would love a C++ replacement that was still fundamentally the same language but with the ugly legacy warts removed.

resource drop

cplusplus.com/

my nigga Alex
cprogramming.com/tutorial/templates.html

Accellerated C++.pdf

protip: when browsing old sites, use the Stylish browser extension and install the dark themes for those sites.

How does memory work I have trouble visualizing it and seeing how it fully works

what do you think about metaclasses
open-std.org/jtc1/sc22/wg21/docs/papers/2017/p0707r0.pdf

you don't need to learn any more than the stack, heap and pointers desu

It's called C++19

How is memory allocated and how are the addresses laid out

C++ is a massive pile of shit and the people that use it are sjw cock eating faggots.

It's a meme. Tons of people know/learn C, and C++ seems like the default next step because of its name. If it were names BS (after its author) no one would give a fuck.

names/named

Funny how the same didn't happen to D. Or even C#.

I have been to uni for a while now and learned only Java up until now.
I started learning C++ a few weeks ago via sololearn.com, but it is not really helpful on the basic stuff.
Anyway, is there a good book with about 250 pages that gives me the basics ?

a tour of C++, but it probably doesn't go into the depth you need

>Anyway, is there a good book with about 250 pages that gives me the basics ?
Get a 500 page book and read half?
Publisher hate short books for some reason.

In my entry level programming course, we used "the art and science of java" which was pretty comprehensive. Later on programming patterns and other stuff we mostly got from lectures.
But since Java and C++ are very similar i don't expect huge changes to standard patterns. All i really need is to know is syntax and specific differences (something like: " what is the point of pointers" or " what is dynamic memory allocation").
We have 1000 page encyclopedias about basically every major language and standard in our unilibrary, which is useful if you want to solve a specific problem or question, but not for learning new stuff( i don't want to read about "what is a class" again").
I want a basic tour and overview of the features, so i will follow advice.

>But since Java and C++ are very similar i don't expect huge changes to standard patterns.
That's a dangerous assumption to make, in particular you'll need to adapt to RAII patterns and value types as default.

Learn about RAII, references, raw and smart pointers, move semantics. Learn when to use each.
Also understand the rationale behind the STL, how to use containers, iterators and algorithms.

Okay, will do. I am going to scour the library after this stuff during summer vacation.
Thanks for the advice.

It doesn't take too much time to read thick programming books. Don't be scared of pages, it's probably full of examples to help you advance faster.

Read Tanenbaum's book on OS

My niggas

which one?
> Operating Systems Design and Implementation, 3rd ed.
> Modern Operating Systems, 3rd ed.

They are pretty much the same though the first focus in the implementation via MINIX

Modern OS use virtual memory which means the addresses it uses aren't the actual addresses of the hardware. Instead, usually each program get its own address space. In this memory space it holds the section of the binary, such as it's code and constants, the heap, and the stack. Heap memory are chunks of memory that are specifically allocated by your program to use. The heap grows from low addresses to high.
The stack on the other hand does not have to be allocated by you. The stack holds things like local variables and return addresses for function calls. The stack is obviously LIFO (last in first out). The stack starts at a high address and grows towards low addresses.