learn C++.NET

M

Mike

Hello everyone!
I've been programming for several years doing web sites, web services,
controls, etc. using VB6, VB.NET, C#, ASP, JavaScript and XML, well I'm
bored with creating web sites and looking for something new and challenging
and take the next step in my IT career. In my opinion anyone can create a
web site with the right tools. I started programming with creating simple
games in qbasic (nothing fancy or high tech), just plain good 'ole games and
about 15 or so years ago. I've been reading that C++ is where its at for
game programming and more of the OS style of programming.

To get to my question, since I can code in .NET and VB how and were could I
get started in learning C++.NET? I would like to eventually get back into
game development but I have to take 'baby steps' first before getting to
that level in C++.NET and I don't see many online tutorials on C++ its all
C#, VB.NET, Java, etc. so can anyone point me to either some good books, web
sites, etc so help me learn C++?
 
B

Ben Voigt [C++ MVP]

Mike said:
Hello everyone!
I've been programming for several years doing web sites, web services,
controls, etc. using VB6, VB.NET, C#, ASP, JavaScript and XML, well I'm
bored with creating web sites and looking for something new and
challenging and take the next step in my IT career. In my opinion anyone
can create a web site with the right tools. I started programming with
creating simple games in qbasic (nothing fancy or high tech), just plain
good 'ole games and about 15 or so years ago. I've been reading that C++
is where its at for game programming and more of the OS style of
programming.

To get to my question, since I can code in .NET and VB how and were could
I get started in learning C++.NET? I would like to eventually get back
into game development but I have to take 'baby steps' first before getting
to that level in C++.NET and I don't see many online tutorials on C++ its
all C#, VB.NET, Java, etc. so can anyone point me to either some good
books, web sites, etc so help me learn C++?

I don't understand your motivation for learning C++/CLI. If you want to
write .NET programs, C# is much easier. If you are interested in 3-D
graphics and squeezing all possible performance out, you won't want to use
..NET and Windows Forms, you'll want DirectX or OpenGL.

With that in mind, http://nehe.gamedev.net/lesson.asp?index=01 might be a
good start. The syntax will be pretty natural if you already know C#,
you'll just have to get used to using pointers for passing arrays and out
parameters.
 
K

Kerem Gümrükcü

Hi Ben,

i think this guy is questioning the very meaning of programming,
or what Neo always was asked himself "What is the Matrix?".
Nor do i see a real motiviation learning C++ when i read his
post. Just to give him a answer:

Mike if you are looking for some challenge in Programming,
then go Drivers, Kernel Mode, Debugging Assembler, Writing
Assembler, low-level hardware controlling, Parser, Linker,
Compiler development,...

C/C++ are good and very powerfull, but if you really are
looking for a big change in your life, then go physics, math
compiler, lexer, profiler, artificial intellgence (AI) and assembler
development. This will give you a new meaning for the word
"Programmer". Just stay in the science space (Math and Physics)
and you will reach a new level! Go write your own RDBMS
implementing full ANSI SQL or your own transaction egine, or
whtever you like,...stay in science space and you will find a lot
of challenging tasks!

But if you still stay at your idea in learning C++.NET then here
is a big tutorial in English, good, comprehensive and complete
so it looks at the first sight. See here:
http://www.functionx.com/vcnet/index.htm

Nevertheless, this is your primary source for C++.NET:
http://msdn2.microsoft.com/en-us/visualc/default.aspx

If you can read and understand german, then there are
some free books in the www you can download,...

Regards

Kerem

--
 
P

PvdG42

Mike said:
Hello everyone!
I've been programming for several years doing web sites, web services,
controls, etc. using VB6, VB.NET, C#, ASP, JavaScript and XML, well I'm
bored with creating web sites and looking for something new and
challenging and take the next step in my IT career. In my opinion anyone
can create a web site with the right tools. I started programming with
creating simple games in qbasic (nothing fancy or high tech), just plain
good 'ole games and about 15 or so years ago. I've been reading that C++
is where its at for game programming and more of the OS style of
programming.

To get to my question, since I can code in .NET and VB how and were could
I get started in learning C++.NET? I would like to eventually get back
into game development but I have to take 'baby steps' first before getting
to that level in C++.NET and I don't see many online tutorials on C++ its
all C#, VB.NET, Java, etc. so can anyone point me to either some good
books, web sites, etc so help me learn C++?

To add an opinion to what you've already been told...
I think what you're really looking for is the non-.NET C++. The language
itself has features not found in the managed environment languages (Java,
C#, VB.NET) that allow you to do just about anything you can dream up. Kerem
mentioned several adventures in the scientific arena.
This book gives you language basics, a look at Windows development through
the Microsoft Foundation Classes (MFC) and material on C++/CLI if you wish
to use the .NET Framework (although Ben Voight's point on that is well
taken, IMHO).
Note that a new edition is coming out early next year.

http://www.wrox.com/WileyCDA/WroxTitle/productCd-0764571974.html

New edition:

http://www.wiley.com/WileyCDA/WileyTitle/productCd-0470225904.html
 
P

Peteroid

A good reason to want to work with C++/CLI over C# is familiarity. Many of
us already know C++, and so extending to C++/CLI only requires understanding
..NET concepts. To learn C# one must understand .NET concepts AND learn a new
syntax.

In the case of extending to only C++/CLI, a programmer who is familiar with
C++ will know if he runs into a problem with his appication's source code
how to determine whether the problem is a C++ syntax error or a C#
conception error or bug. If such a programmer determines that no C++ syntax
error is present (via his existing familiarity with C++ syntax), he can then
look closer at the possibility his problem is a .NET misconception. It is
easier to isolate the problem.

In contrast, someone who is already familiar with C++ trying to learn C#,
who then runs into a problem, might have a more difficult time trying to
figure out if it is a C# syntax error (since it is new to him) or a .NET
misconception.

And, the fact that C# is very close (but definitely not quite exactly the
same) in syntax to C++ (using '.' format a LOT more), a person already
familiar with C++ can easily accidentally mix the language syntaxes in the
same code. This then becomes VERY hard for such a programmer to detect, as
in his eyes everything is valid syntax (albeit from two different
languages)!

Thus, those who already know C++ will often find the transition to C++/CLI
far more easy a go than directly to C#. I know I did... :)

[==P==]
 
B

Ben Voigt [C++ MVP]

Peteroid said:
A good reason to want to work with C++/CLI over C# is familiarity. Many of
us already know C++, and so extending to C++/CLI only requires
understanding .NET concepts. To learn C# one must understand .NET concepts
AND learn a new syntax.

Ah, but I was replying to a programmer who said he already knew C#.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top