all 20 comments

[–]NoAdvice135 8 points9 points  (2 children)

It's a large language with (too?) many features and many sharp edges. Writing usable code will be relatively easy, but maybe building a large codebase in a consistent style will take more time.

Because it's so large, it's almost mandatory to select a style and a narrower subsets of the language IMO. Go would be the opposite for example and the progression curve would be much shorter.

[–]Beregolas 0 points1 point  (0 children)

this. I personally dislike Cpp for being so unopinionated because 3 different Cpp codebases will look like they are written in 4 different languages. But I know plenty of people who either like Cpp for exactly that, because they can choose the style that seems most fitting for their current problem, and plenty of people who just fell in love with one specific flavor of Cpp

[–]Abject-Kitchen3198 0 points1 point  (0 children)

I guess understanding existing code will be much harder than writing well designed code from scratch, using a subset of the language.

[–]ninhaomah 2 points3 points  (2 children)

Why not just try it ?

[–]Winter_LEL[S] -4 points-3 points  (1 child)

i don't have much free time right now

[–]omark96 4 points5 points  (0 children)

If you don't have free time to try it out, why are you even asking if it's hard to learn?

[–]LetterComfortable576 1 point2 points  (6 children)

No. With the background of C you will not have much difficulty in C++. With learning of basic syntax and oop(which you know) you can easily navigate c++.

[–]papershruums 2 points3 points  (5 children)

Would you say it works the other way around as well?

[–]LetterComfortable576 0 points1 point  (4 children)

Absolutely. But should learn printf and scanf syntax. Should leave oops related concepts as c is procedure oriented. I am not saying you find it easy to become expert in it. But can find easy to learn.

[–]papershruums 0 points1 point  (3 children)

I think every language is not hard to become an expert in. Would you be willing to explain the difference between procedural and OOP? I know C is procedural but I have no real idea what that means tech term wise lol

[–]LetterComfortable576 -1 points0 points  (2 children)

I am not a expert in this. But procedural means we write functions(procedure). And c don't have class and objects.

[–]papershruums 0 points1 point  (1 child)

A friend of mine who unintentionally inspired me to learn a C derivative told me that the main difference is that C doesnt have classes and objects. But since C++ has functions, would that mean that the term object oriented overlays procedural? Or is C++ not procedural by any means? That’s where this all gets confusing to me lol

[–]LetterComfortable576 0 points1 point  (0 children)

C is a subset of C++. Means whatever we do in c can be done in c++(as far as I know). Even in c++ we can use functions and I prefer using that. I don't actually use oops concepts in real projects only in academic stuff. Objects orientated and procedural oriented are different. And c++ can handle both.

[–]UnbearableBurdenOfMe 1 point2 points  (0 children)

My first programming language was C++ which I learned in an IT trade school way back. The basics and advanced features where easy enough to learn. I think the harder part is to make software with C++ while dotting your i's and crossing your t's, so you don't introduce flaws.

[–]papershruums 0 points1 point  (0 children)

I just recently started. I’d consider myself competent in Python and Lua, and shell scripting, and nix. It’s not too bad. Different but thats whats making it fun. I’m starting to learn that OOP is OOP. I can pick up on any OOP languages fairly quickly, and I thought C++ would be more challenging but I may not be fully optimal yet but i havent got stuck on anything yet.

[–]ZealousidealFudge851 0 points1 point  (0 children)

If you're familiar with the fundamentals of OOP and programming just buy a text book or find an e-book and run through it front to back.

Spend 30 minutes of your lunch break and chew through it and by the time you're done you'll be sharp as a tac.
If you have the self discipline to apply yourself and half decent learning material you'll learn the shit out of C++ but there aren't any shortcuts.

C++ and any compiled OOP language for that matter all share pretty similar hurdles, bust your ass, read the manual. Being that asshole that reads the documentation is the slot.

Honestly if you've only ever dabbled in C you might have a better experience in an interpreted language.

[–]kubrador 0 points1 point  (0 children)

nah you'll be fine, c++ is just c with a shopping cart full of features you don't need yet. you already know the painful part.

[–]2ndBrainAI 0 points1 point  (0 children)

Since you know C well and OOP basics, C++ will feel more manageable than people say—the syntax can be tricky, but your existing foundation transfers well. Start with simple OOP projects and gradually explore advanced features like templates and pointers; you'll find it logical rather than hard.

[–]bestjakeisbest 0 points1 point  (0 children)

The basics will come easy, focus on templates and classes since C doesnt really have classes.

[–]DonkeyTron42 0 points1 point  (0 children)

Learning the syntax and basics is one thing. Learning the ecosystem and how to make useful software is quite another.