views:

114

answers:

3

EDITED...

I posted a similar question about VB and C#. The question here is slightly different, considering the differences between VB.NET and C++ are greater than those between VB.NET and C#.

Do I stick with my sort-of working knowledge of VB.NET and learn it thoroughly or skip to C++?

EDIT 2:

I am familiar with Actionscript syntax and Java syntax, both of which are similar to C/C++ in a way. Also, I have experience with Javascript and PHP. Does that help me?

EDIT 3:

I plan on learning Objective-C. That is not up for discussion. I have started a bit already. Does that help/hurt C++ learning?

A: 

I would skip C++.NET, unless you absolutely need a lot of direct access to unmanaged resources.

FYI. there is nothing called C++.NET. You might be referring to C++/CLI.

Daniel A. White
I want to do Premiere Plugins which can apparently only be done in C++.NET. Additionally, I am starting iPod/iPhone apps which run Objective-C, a cousin of C++. **EDIT:** CLI = Command Line Interface?
Moshe
CLI stands for Common Language Infrastructure. It's some .NET thingie: http://de.wikipedia.org/wiki/Common_Language_Infrastructure
Shaharyar
Common Language Infrastructure, the specification of common .Net types, the Common Intermediate Language (previously known as MSIL), etc.
maayank
+3  A: 

It depends entirely on what you want to accomplish. You are right, C++ and VB are two completely different languages and have quite a few fundamental differences (managed vs. unmanaged being a major one that comes to mind...). That said, if you are just doing some basic windows programming or web development (in ASP.NET) I would stick with VB.Net, there really isn't much reason to struggle with trying to learn C++ for that. If you are simply wanting to learn or are wanting to do something that necessitates insane performance, than you probably want to explore C++. It really depends on what you are wanting to do with it. (That's my opinion though, I'm sure you'll get a variety here :-) )

Edit: Based on what you said, if you want to do something that necessitates C++, then you really don't have much choice. Java is syntactically similar to C++ however they are by no means the same. Some of the biggest headaches (in my opinion) and gotchas associated with C++ stem from having to manage your own memory which Java takes care of for you. I wouldn't chose a language based on syntax alone, that isn't nearly as hard to learn and wrap your head around as some of the idiosyncrasies of the language implementation itself. As an aside, if you are wanting to do iPhone apps, check out Titanium Appcelerator which allows you to write iPhone apps in HTML5/Javascript and then translates that to native code. That would allow you to leverlage your javascript knowledge without having to learn a new language.

Chris Thompson
+1 for Titanium link, Check for thorough answer.
Moshe
+1  A: 

The easy answer is, no, it does never hurt to learn another language. Especially if you're coming from a high-level language like *.NET to a low-level language like C++. The hard part is to get both languages right and/or master both.

Bobby
+1 SPACE FILLER
Moshe