View Full Version : C++ vs Visual Basic

01-06-2004, 01:35 AM
For my Computer Programming course, I have the choice of learning C++ or Visual Basic. I will be learning on a Windozes 98 machine, but I would also like to be able to work on my own on my home iMac.

What would be more beneficial for me to learn?

Any thoughts will be appreciated.

01-06-2004, 04:18 AM
Well, visual basic is windows only as far as I know, there may be runtimes (libraries of code to help vb programs run) for other operating systems but I don't know of any!

I'm not sure if there are c++ compilers for mac, I know that java can be copmiled on mac and it's pretty similar to C which is pretty similar to C++ ..

Ok after writing that last sentence I whent googling for info, I'm not 100% sure but I think there are compilers for C++ that work on mac. I'm sure there is a forum or something linked from the Apple website (www.apple.com) if you are willing to look.

[edit:] In case you didn't know, a compiler will turn your code into machine code (binary) ... :)

01-07-2004, 10:27 PM
Im pretty positive that macs can compile C++ source code but like mhtml said vb is windows specific.


01-07-2004, 10:51 PM
Of course there are C/C++ compilers for the Mac platform. C is still the the most common lower level functionality (kernel, IO, etc) language on all platforms. So common that it can be considered a de-facto standard for everything except LISP-machines and Java hardware runtimes. Codewarrior is the most used of course, and gcc in OS X. IBM has one of their own that I can't remember the name of for the moment. There are others as well, but none as big on the platform. In fact, GCC could be considered to be the most widely spread compiler of any kind, when it comes to number of platforms it supports.

01-08-2004, 03:44 AM
c++ will be more useful for powerful and portable applications, however visual basic 6 is a really easy language to work with for beginners.

i learnt to use the windows API in VB6, and that is making c++ windows programming make a whole lot more sense than it did before i learnt vb.

sadly, vb programs need all these runtime DLLs to run, which means lots of baggage when you distribute the application.

01-08-2004, 01:46 PM
VC++ isn't exactly DLL independent either, unless you write all the functionality yourself.

01-08-2004, 02:01 PM
C++. you'll prefer it in the lng run. although VB might be better if ths is the first langauge you learn

01-08-2004, 02:17 PM
The best way to learn programming is with a procedural language like C (C, not C++) or Pascal. That's why they are usually the introductory classes to programming in the universities. They are the closest to what a computer really works like, and they'll give you the best background to then understand OOP (C++, Java, etc), and all other sorts (VB is kinda like an "other sort", not object oriented, but it has objects, and way too much of the "guts" of the computer is hidden/abstracted from the programmer). VB is the easiest language to have a quick Windows app up and running in no time (anyone with half a mind can have a VB hello world app 2 minutes after they fire up the IDE), but making the transition from VB to C or C++ will be much harder, than if you have a decent background in procedural programming.
That's my 2 cents.


01-08-2004, 02:26 PM
Universities I've had a look at tend to use C/C++, Java, Fortran and/or Pascal later on in the education, when the students do actual programming, but teaches programming basics in a more abstracted (often functional) language such as Haskell, SmallTalk, ML, Python, Scheme or LISP; or in a scripting language to remove the compilation and strict typing from being a factor.

01-08-2004, 03:10 PM
Where I studied (and all the universities here in Israel, AFAIK), the first course in CS, called "Intro to Computing" is a C programming course (it used to be Pascal, but changed around 10 years ago). You just make simple console programs (compiling with good ol' Turbo C from Borland).
And I think that is the best way to really learn programming in the general sense, not just knowing one or two languages, but understanding what the code you're writing really is. In the long run you'll become a better programmer that way (it's all 0's and 1's in the end, no matter what platform).


01-08-2004, 03:11 PM
I just noticed this:

VC++ isn't exactly DLL independent either, unless you write all the functionality yourself.

You can always statically link what you need and then you won't have to use any dlls (although it might not be the best approach in many cases).


01-08-2004, 03:14 PM
It's hard to do with some windows APIs, for instance, since they change with the windows version...

01-08-2004, 03:17 PM
Like I said, not the best approach in many cases.

01-18-2004, 12:29 PM
i have three keyboards for my mac and not one of them has a # key!!!