Should i get started learning C++

I am currently in year 12 and i'm doing IT as a subject for the first time and we're working on relational databases at the moment but later in the year we'll be doing application programming which i'm quite excited for, its pretty a general way of describing it so i don't know what programing language we'll be using
I am looking to go to University to study IT and the degree i am looking at is on games and entertainment design which seems pretty silly but it also looks at the designing/developing and artistic side. The reason for this is because i haven't really gotten any advice on thise so i'm wondering if it'd be a good idea to get started with C++ now, if anyone has any suggestions for how i should go about this, such as maybe starting with some easier programing languages to begin, that would be very much appreciated
Thanks

Your in a good place now to learn C++ (this site has some very helpful people and the reference section is very detailed). However, there are thousands of sites on the internet that offer you tutorials to learn.

Such as...
http://www.learncpp.com/


Grab a IDE such as Visual Studio Express, Code Blocks or Eclipse - these are all free and run through some tutorials, and when you get stuck just pop your questions on this forum and someone will help.




Most likely you will be taught JAVA not C++

I hear JAVA is easier to work with than C++ so maybe you should start with the easier one first. Both are powerful languages though and the choice is yours.
Java derives much of its syntax from C and C++ and I would disagree with it being easier.

From my experience, though the syntax of Java and C++ are very similar, though java has some additional syntactical safeguards that C++ doesn't have, they have very different programming styles. For a person new to learning a language, I would suggest that for top-down people Java would be easier, but for bottom-up people (like myself), C or C++ would be easier to learn.

If you are looking at games and entertainment, C++ can be a good choice. There aren't many commercial-grade Java games around (Minecraft being the notable exception, though apparently they are having some efficiency problems on older computers now because it was written in Java, though I haven't found any reliable sources saying this). However, often in game design you can be doing lots with scripting languages. I would suggest learning Lua (or maybe Python) instead/as well, especially if you are a top-down person.

EDIT:
Just clarifying, a top-down person is someone who figures out the general processes that it will follow and the algorithms, etc, and works out how to implement it afterwards. A bottom-up person is the opposite, as in they will work on the implementation and create the algorithms they need as they go. As such, a bottom-up person will be better at languages like C or assembly, while a top-down person will be better at languages like Lua or Python.
Last edited on
Thank you all so much for your replies, i definitely will be making a decision soon after all of your advice and since i have a two week brake coming up haha
Have you guys ever regretted learning a language from not using it as much as you thought or some other reason?
Start learning C++, C++ is the best language for almost anything so it wouldn't be a bad idea to learn it, I can assure you that you will not regret learning this language in any way possible, if you're stuck somewhere be sure to visit this forums for there are many people here who'd be glad to help you understand certain things, have fun.
C++ is the best language for almost anything


while i agree OP should learn C++, i think this a bit of a maverick statement to say the least.
Have you guys ever regretted learning a language


I have no regrets on the languages I have learned through the years, they have all benefited me, and for the purpose of this post those are C, C++, Cobol, Pascal (Delphi), Basic, ASM and Java.

Apart from writing Android stuff in Java (Unless Im using the NDK) I mostly use C++ (and some ASM for those routines needing that extra speed).
Have you guys ever regretted learning a language

brainfuck... it gives me nightmares




C++ is the best language for almost anything



while i agree OP should learn C++, i think this a bit of a maverick statement to say the least.


+1 c++ has its place, but its always a good solution
Both languages are difficult to learn. Java does have garbage collection in place, but it has a very large, and rich library of classes to learn. Learning the basics of either language can be done in about the same amount of time. However, becoming an expert in either will require a tremendous amount of effort regardless of which one you choose. If I were you, I'd learn the basics of both. Depending on which one you like better, you can start learning one of the gui frameworks. For C++, try QT and for Java, try Swing. You will have fun doing either. Also netbeans is an open source compiler that supports both so I would recommend looking into netbeans as an IDE for learning the basics.

Another option which is even easier is to learn a scripting language like python. Then you don't need to worry about compiling. It is very high level, has a rich library, and is a great language for developing your fundamental programming skills.
python is a great first language i agree, however:
a) worrying about compiling? there is nothing to really worry about
b) any language can be compiled or interpreted.

edit: also, if you want to learn python, the website udacity is very big on python. their first lesson in computer science teaches you python and you end up building a search engine
Last edited on
C++ is a good language for almost anything so i would advise you to learn it
C++ is a good language for almost anything so i would advise you to learn it
c++ can be used for most things. is it always appropriate? no
Thanks so much for the responses you guys! I've decided that since i'm on holidays, i will start learning the basics for C++ and if i don't take much of an interest in it i will hold off from any programing until firstly in my stage 2 IT class and then secondly in the univesity degree, can't say i will doubt this will happen but regardless, i am excited to get started at the moment :)
If anyone has anymore advice i'd definitley take it into consideration, thanks again!
C++ is a good programing language for anything, but a good gamelib is not always included.Java already has some sort of lib preinstalled. Also make sure you get a modern compiler/IDE like Code Blocks, instead of devC++ which uses old standards, has a bad debugger, and it's been discontinued by its developer for quite sometime, and its libraries are way out of date, not to mention its devpack update system is broken.

moral: Don't get devC++ get something new like Code Blocks.
Last edited on
C++ is a good programing language for anything,

god damn it read before posting. c++ can be used for most things. it is not always appropriate.

Also make sure you get a modern compiler

+1. the gnu tool chain 4.8 is a good one (mingw is the windows port), clang i think is 3.3, and whatever the latest vc++ is, are more of the popular ones. however you dont need to get an ide. i dont. i use gedit, make, my own makefile generator, the gnu gcc toolchain
Well C++ is a great language but its not the best for OOP java and C# do a better job at it without wasting performance
C++ is a great language but its not the best for OOP
c++ is excellent for oop. i dont know where you heard that from. java and c# are just more fanatic about it than c++

edit:
without wasting performance
you do know that java has a slow startup speed per app right?
Last edited on
Topic archived. No new replies allowed.