ProgrammingThis forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game.
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
Higher level languages might be easier to learn, but if you know you'll need C++, that's what you should study then. Though downloading and flapping trough a book isn't maybe the best way to go; if you can, you should attend a course that teaches the basics of the language so you'll get on your way and can then more easily read books about the language and it's finer parts. My personal experience is that starting with a new language by reading a 1000 pages long book is usually too exhausting to get good results with, compared to learning with other people that know the thing already and aid you with examples. Books don't answer personal questions
It could also help if you learned the basics of C first. It's fully personal matter and I understand that it might confuse some people (depends on how you learn), but C is a fairly small language and thus fairly easily/quickly learned, and after you know how it works, C++ is like half a friend already. Going to the fine pieces of it is easier then. Though there is a drawback: C++ is stricter and some things you did in C don't apply to (good) C++..well, decide yourself. But it will take time to know it well and even more to be able to work with it smoothly, and there's no shortcut to being able to write good C++ programs. So consider a course if you can..
C++ is not difficult, at least at an elementary level. I took it as an a first college-level computer science course, forget the text. You could just google for online texts, many intro-level texts, and the texts used at various universities. It seems that many universities have switched over to java as the introductory computing course. C++ is a relatively high-level language, and didn't seem any harder to pick up than BASIC or FORTRAN-77 or Mathematica. Mind you, I have only one course level experience in any of these. Structured programming is pretty much the same in all of them, and I only saw object oriented stuff for about a month or so, never to be used afterward (I mainly did small-scale projects in numerical computing with Fortan).
Thanks a core
everyone for a good response.
Actually My friend suggest me to learn it because
C is the basic if any language
and If I learn C first then any other language would be easier to grasp.
That's why I am interested to learn C++ first.
I don't think it matters too much. If you know you need to use a certain language for something, then obviously that dictates which language to learn first. Otherwise, any "general purpose" language is good in my opinion.
My understanding is that C allows you a more hands on approach to memory management, and when you need to know when during a process that memory will be freed up, as opposed to languages using automatic garbage collection, such as java. The linux kernel, for example, is written in C, since the operating system kernel needs to interact with the hardware at a fairly low level.
Recent advances in Just in Time compilation and other additions have greatly increased java's performance.
As mentioned, it depends on what you want to do and what the particular project you are working on uses. Java is very popular now, and as I mentioned earlier, universities seem to be switching from C++ to it as a first course in programming. Its cross platform support is very nice.
Many people suggest python as a first programming language. It is very easy to read and have other people maintain, and many people state that they feel more productive using it to get the job done.
There is much to be said about other programming languages and their strengths/niches.
C/C++, Java, and Python would all work as general programming languages, I think. All are widely used. Once you pick up one, the others will come more easily.
I don't think there is any problem in learning C++ first, but perhaps you should speak with friends in industry or instructors.