Jump to content

I want to learn C++

Guest PhatRATTY
Go to solution Solved by Slottr,
Just now, PhatRATTY said:

I did do scratch and I got stupid good at it, lol! I kinda want to go straight to C++ tho. 

You'll have a horrible time, but go for it. You'll definitely be very lost on a LOT of principles by jumping into something like C

 

This is a good resource:

 

The C++ Programming Language (4th Edition) https://www.amazon.ca/dp/0321563840/ref=cm_sw_r_cp_api_i_VsO4Eb6J40416

 

Incredibly boring though

What is the best resource for doing that?

Link to comment
Share on other sites

Link to post
Share on other sites

1 minute ago, PhatRATTY said:

What is the best resource for doing that?

What do you know already?

Community Standards || Tech News Posting Guidelines

---======================================================================---

CPU: R5 3600 || GPU: RTX 3070|| Memory: 32GB @ 3200 || Cooler: Scythe Big Shuriken || PSU: 650W EVGA GM || Case: NR200P

Link to comment
Share on other sites

Link to post
Share on other sites

Just now, Slottr said:

What do you know already?

Completely new to coding.

Link to comment
Share on other sites

Link to post
Share on other sites

C++ is not a particularly beginner friendly language. Any specific reason why it must be C++ for your first programming language?

Remember to either quote or @mention others, so they are notified of your reply

Link to comment
Share on other sites

Link to post
Share on other sites

3 minutes ago, PhatRATTY said:

Completely new to coding.

don't start with C, then.

 

Start with something a little easier and lenient like Python or Javascript 

 

If you haven't even looked at or touched code yet, try Scratch 

Community Standards || Tech News Posting Guidelines

---======================================================================---

CPU: R5 3600 || GPU: RTX 3070|| Memory: 32GB @ 3200 || Cooler: Scythe Big Shuriken || PSU: 650W EVGA GM || Case: NR200P

Link to comment
Share on other sites

Link to post
Share on other sites

3 minutes ago, Slottr said:

don't start with C, then.

 

Start with something a little easier and lenient like Python or Javascript 

 

If you haven't even looked at or touched code yet, try Scratch 

I did do scratch and I got stupid good at it, lol! I kinda want to go straight to C++ tho. 

Link to comment
Share on other sites

Link to post
Share on other sites

4 minutes ago, Eigenvektor said:

C++ is not a particularly beginner friendly language. Any specific reason why it must be C++ for your first programming language?

I want to learn how to develop games and C++ therefore is really the only option. :P

Link to comment
Share on other sites

Link to post
Share on other sites

8 minutes ago, PhatRATTY said:

What is the best resource for doing that?

C++ is not what you want to start with. Trust me. 

 

Maybe start with HTML > CSS > Then JavaScript. That way you can get practice just the environment of how it feels to code. 

 

A good site/YouTube Channel would be: FreeCodeCamp. 

 

These videos are a great resource. You could go in order and be good!

 

 

In the middle of those, check out the various project Brad has available!

Link to comment
Share on other sites

Link to post
Share on other sites

Just now, PhatRATTY said:

I want to learn how to develop games and C++ therefore is really the only option. :P

To develop games, you can do that with JavaScript! lol. 

 

But if you know HTML and CSS, then you can develop even better web-based games. 

Link to comment
Share on other sites

Link to post
Share on other sites

Just now, PhatRATTY said:

I did do scratch and I got stupid good at it, lol! I kinda want to go straight to C++ tho. 

You'll have a horrible time, but go for it. You'll definitely be very lost on a LOT of principles by jumping into something like C

 

This is a good resource:

 

The C++ Programming Language (4th Edition) https://www.amazon.ca/dp/0321563840/ref=cm_sw_r_cp_api_i_VsO4Eb6J40416

 

Incredibly boring though

Community Standards || Tech News Posting Guidelines

---======================================================================---

CPU: R5 3600 || GPU: RTX 3070|| Memory: 32GB @ 3200 || Cooler: Scythe Big Shuriken || PSU: 650W EVGA GM || Case: NR200P

Link to comment
Share on other sites

Link to post
Share on other sites

1 minute ago, PhatRATTY said:

I want to learn how to develop games and C++ therefore is really the only option. :P

JavaScript is one of the easiest ways of building games in my opinion. 

Link to comment
Share on other sites

Link to post
Share on other sites

1 minute ago, Slottr said:

You'll have a horrible time, but go for it. You'll definitely be very lost on a LOT of principles by jumping into something like C

 

This is a good resource:

 

The C++ Programming Language (4th Edition) https://www.amazon.ca/dp/0321563840/ref=cm_sw_r_cp_api_i_VsO4Eb6J40416

 

Incredibly boring though

You are right. C family languages require you to do alot of terminal based stuff before you can even think of GUI. He would be doing alot of `cout << "Hello World" << std::endl``. Before he can enjoy any sort of real fun.

 

JavaScript has great ties with HTML and the DOM which allow you to step on to GUI very quickly. 

Link to comment
Share on other sites

Link to post
Share on other sites

2 minutes ago, Slottr said:

You'll have a horrible time, but go for it. You'll definitely be very lost on a LOT of principles by jumping into something like C

 

This is a good resource:

 

The C++ Programming Language (4th Edition) https://www.amazon.ca/dp/0321563840/ref=cm_sw_r_cp_api_i_VsO4Eb6J40416

 

Incredibly boring though

Thanks for the legitimate answer. A lot of people on this server try to convince me not to do what i want to do instead of being supportive of my choices :P

Link to comment
Share on other sites

Link to post
Share on other sites

5 minutes ago, PhatRATTY said:

I want to learn how to develop games and C++ therefore is really the only option. :P

Also, someone i know built a Crossy Road type game in JavaScript and HTML. Also, one more thing, if you do C++, I guarantee you will get bored very quickly and won't have a good time once you get bored. 

Link to comment
Share on other sites

Link to post
Share on other sites

3 minutes ago, PhatRATTY said:

Thanks for the legitimate answer. A lot of people on this server try to convince me not to do what i want to do instead of being supportive of my choices :P

What you could do is learn programming principles with JavaScript and HTML first, then at the side learn C++. Like this:

 

- Build a game in JavaScript 

 

- Then learn as you go while building it in C++. 

 

- Then refactor your code for C++ as you learn more new things. 

 

A video like this for C++ game dev could help you: 

 

BTW: He has an entire C++ beginning series. 

Link to comment
Share on other sites

Link to post
Share on other sites

2 minutes ago, PhatRATTY said:

Thanks for the legitimate answer. A lot of people on this server try to convince me not to do what i want to do instead of being supportive of my choices :P

Expect to be frustrated a lot. Expect to move language when you do end up finding it too difficult for base level. 

 

I do strongly recommend reading up on CS principles and methods to problem solving. 

 

At the beginning it's not the language you learn that matters but it's the principles you pick up. Knowing these principles you can traverse other languages much easier.

Community Standards || Tech News Posting Guidelines

---======================================================================---

CPU: R5 3600 || GPU: RTX 3070|| Memory: 32GB @ 3200 || Cooler: Scythe Big Shuriken || PSU: 650W EVGA GM || Case: NR200P

Link to comment
Share on other sites

Link to post
Share on other sites

Just now, Slottr said:

Expect to be frustrated a lot. Expect to move language when you do end up finding it too difficult for base level. 

 

I do strongly recommend reading up on CS principles and methods to problem solving. 

 

At the beginning it's not the language you learn that matters but it's the principles you pick up. Knowing these principles you can traverse other languages much easier.

Definitely! 

 

And confusion starts when you are told to create the main function and that is where you write your code. It usually takes about 5-10 tutorials to reach functions and what it actually means.

Link to comment
Share on other sites

Link to post
Share on other sites

1 minute ago, Nano Adam said:

Definitely! 

 

And confusion starts when you are told to create the main function and that is where you write your code. It usually takes about 5-10 tutorials to reach functions and what it actually means.

And that doesn't even compensate for the time it will take to comprehend functions to begin with. 

Community Standards || Tech News Posting Guidelines

---======================================================================---

CPU: R5 3600 || GPU: RTX 3070|| Memory: 32GB @ 3200 || Cooler: Scythe Big Shuriken || PSU: 650W EVGA GM || Case: NR200P

Link to comment
Share on other sites

Link to post
Share on other sites

1 minute ago, Slottr said:

And that doesn't even compensate for the time it will take to comprehend functions to begin with. 

Yep. In languages like Python and JavaScript, you can get going with `print("") or `console.log()``. There is really not much confusion at first. It is almost complete scratch!

 

JS can be started without install anything! 

 

C++ has many different compilers to deal from and all. 

Link to comment
Share on other sites

Link to post
Share on other sites

I would say c# would be a nice point to start.

 

It will let you build your concepts of OOP and other coding practices.  (Then you could try things like c# and unity)...after which you could dive into c++ (which despite c# and c++ having similar names are quite different, but it would be easier in my opinion going from c# to c++ than it would be say from javascript to c++)

3735928559 - Beware of the dead beef

Link to comment
Share on other sites

Link to post
Share on other sites

11 minutes ago, PhatRATTY said:

I want to learn how to develop games and C++ therefore is really the only option. :P

That's simply not true. Yes, C++ is used a lot in the gaming industry, because it has certain advantages. But those advantages won't come into play until you've got the experience to use them. And the other side of the coin is that those advantages come with a hefty price in terms of learning curve and amount of code you need to write.

 

There are lots of games and engines written in other languages (for example Unity uses C#), because they simply don't need those low level features. Modern PCs are so fast that not every game has to be optimized 100% to run fine, especially for simpler games.

 

As @Slottr has said, the first step to learning programming it to learn the principles, not a specific language. Once you've understood a concept it gets reduced to translating that concept to a different language. Learning a complex concept while also struggling with a complex language can quickly overwhelm you.

Remember to either quote or @mention others, so they are notified of your reply

Link to comment
Share on other sites

Link to post
Share on other sites

2 minutes ago, wanderingfool2 said:

I would say c# would be a nice point to start.

 

It will let you build your concepts of OOP and other coding practices.  (Then you could try things like c# and unity)...after which you could dive into c++ (which despite c# and c++ having similar names are quite different, but it would be easier in my opinion going from c# to c++ than it would be say from javascript to c++)

But that is 4 extra lines of code you have to wait to learn. The `class` and all. For many tutorials you will be left hanging knowing what they mean. C++ has only 2. 

 

But still great suggestion for him.

Link to comment
Share on other sites

Link to post
Share on other sites

 

2 minutes ago, Nano Adam said:

But that is 4 extra lines of code you have to wait to learn. The `class` and all. For many tutorials you will be left hanging knowing what they mean. C++ has only 2. 

 

But still great suggestion for him.

Yea, but when learning you can safely ignore concepts (and focus on what is being taught).  C# I think is a lot more forgiving in terms of what you need as knowledge to do things properly.  In C++, you can easily do things , such as causing  memory leaks and such without even realizing it (and creating bad habits while initially learning without knowing the consequences of it)

3735928559 - Beware of the dead beef

Link to comment
Share on other sites

Link to post
Share on other sites

1 minute ago, wanderingfool2 said:

 

Yea, but when learning you can safely ignore concepts (and focus on what is being taught).  C# I think is a lot more forgiving in terms of what you need as knowledge to do things properly.  In C++, you can easily do things , such as causing  memory leaks and such without even realizing it (and creating bad habits while initially learning without knowing the consequences of it)

True. C# has the advantage of it being tied with Windows, so creating a GUI wont be extremely hard. And as you said Unity, would be great! 

 

All this depends on what type of learner the OP is. 

Link to comment
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×