473,473 Members | 1,841 Online
Bytes | Software Development & Data Engineering Community
Create Post

Home Posts Topics Members FAQ

C++ or C#.NET

I'm planning to enter the shareware business and I was wondering what is your
opinion should I go for C++/MFC or with C#.NET regarding of
1) performance and 2)capabilities meaning that I want as much access to the
OS as possible.

PS: What about decompiling ... I know that Java code can be decompiled
easily is this the same case with C#.NET?
Nov 17 '05 #1
5 977
"Sotiris Salloum" <Sotiris Sa*****@discussions.microsoft.com> wrote in
message news:17**********************************@microsof t.com...
I'm planning to enter the shareware business and I was wondering what is
your
opinion should I go for C++/MFC or with C#.NET regarding of
1) performance and
The answer will depend on your application. There is no easy answer.
However, if performance is the first item in the must-have feature set, then
you can't go wrong with C++

2)capabilities meaning that I want as much access to the OS as possible.

..Net provides easy access to most but not all of the Win32 API. It does have
a "Platform/Invoke" capbility that takes care of the rest. Of course, since
Win32 is largey a C API and what isn't is C is COM with C++ you can't go
writing here either.
PS: What about decompiling ... I know that Java code can be decompiled
easily is this the same case with C#.NET?


Yes.

Regards,
Will
Nov 17 '05 #2
> I'm planning to enter the shareware business and I was wondering what is
your
opinion should I go for C++/MFC or with C#.NET regarding of
1) performance and pure (unmanaged) C++ is NOT THAT MUCH more performant than C#.
even the worst comparison I've seen gave C++ weak advantage (best advantage
I've seen, if I remember well should be around 20%, but in most case it's
more like 5%).

But productivity is much lower with MFC/C++ (compare to C#/ManagedC++/.NET).
Also it's easy to write good looking Application with .NET. Probably due to
better productivity hey ;-)
For example it tooks me 3Hours to rewrite from scratch Apple's color well
for Winodws/.NET. (with all the bells and whistles such as enabled shading,
focus rect, click on enter, orange border on mouse over, etc...)
2)capabilities meaning that I want as much access to the
OS as possible. used a mix of Managed C++ & C#.
while you could theoritically do everything in C# (include all WinAPI), it's
some times more practical to use ManagedC++ for that.

PS: What about decompiling ... I know that Java code can be decompiled
easily is this the same case with C#.NET?

Yep
Nov 17 '05 #3
One good thing about C++ is that you can use it for managed or unmanaged
code or a combination of the two to increase performance where needed. Of
course, I'm a C++ programmer and this is a C++ forum so ...

:o)

Tom

"Sotiris Salloum" <Sotiris Sa*****@discussions.microsoft.com> wrote in
message news:17**********************************@microsof t.com...
I'm planning to enter the shareware business and I was wondering what is
your
opinion should I go for C++/MFC or with C#.NET regarding of
1) performance and 2)capabilities meaning that I want as much access to
the
OS as possible.

PS: What about decompiling ... I know that Java code can be decompiled
easily is this the same case with C#.NET?

Nov 17 '05 #4
You might want to know that VC++ 2005 can be used to write both managed and
native apps, and for managed apps, it can be considered to be a slightly
better option that C# or VB. I've got an article on this that you may want
to read :-

A rational attempt to substantiate C++/CLI as a first class CLI language
http://www.codeproject.com/managedcpp/whycppcli.asp

--
Regards,
Nish [VC++ MVP]
"Sotiris Salloum" <Sotiris Sa*****@discussions.microsoft.com> wrote in
message news:17**********************************@microsof t.com...
I'm planning to enter the shareware business and I was wondering what is
your
opinion should I go for C++/MFC or with C#.NET regarding of
1) performance and 2)capabilities meaning that I want as much access to
the
OS as possible.

PS: What about decompiling ... I know that Java code can be decompiled
easily is this the same case with C#.NET?

Nov 17 '05 #5
C# is easier to code application and much more reliable since it is
designed to be type safe, where C++ use pointer which is not type safe,
in other word it is programmer responsibility to track of type variable
when pointer is applied. C# on other hand reduce that responsibility
and take strain out of the programmer task. There are several
alternative technique in C# that replace pointer and found be to
effective.

It also easier to read the code left behind for several month.

You can bring unmanaged code (ie COM library) into manage code using
interop service, they well document on various website...just need time
to get use to it. (It took me 1-2 day).

The .net framework library is written in C# by the way.

The only negative side as far as I can see that I have not seen C# code
being used for gaming application...possibly due to lower level access
to speed or access to driver/hardware issue but I might be wrong.

It worth adopting OOP practice as well.

You can do both due to the eay JIT work.

Good luck

Riscy

Nov 17 '05 #6

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

3
by: William C. White | last post by:
Does anyone know of a way to use PHP /w Authorize.net AIM without using cURL? Our website is hosted on a shared drive and the webhost company doesn't installed additional software (such as cURL)...
2
by: Albert Ahtenberg | last post by:
Hello, I don't know if it is only me but I was sure that header("Location:url") redirects the browser instantly to URL, or at least stops the execution of the code. But appearantely it continues...
3
by: James | last post by:
Hi, I have a form with 2 fields. 'A' 'B' The user completes one of the fields and the form is submitted. On the results page I want to run a query, but this will change subject to which...
0
by: Ollivier Robert | last post by:
Hello, I'm trying to link PHP with Oracle 9.2.0/OCI8 with gcc 3.2.3 on a Solaris9 system. The link succeeds but everytime I try to run php, I get a SEGV from inside the libcnltsh.so library. ...
1
by: Richard Galli | last post by:
I want viewers to compare state laws on a single subject. Imagine a three-column table with a drop-down box on the top. A viewer selects a state from the list, and that state's text fills the...
4
by: Albert Ahtenberg | last post by:
Hello, I have two questions. 1. When the user presses the back button and returns to a form he filled the form is reseted. How do I leave there the values he inserted? 2. When the...
1
by: inderjit S Gabrie | last post by:
Hi all Here is the scenerio ...is it possibly to do this... i am getting valid course dates output on to a web which i have designed ....all is okay so far , look at the following web url ...
2
by: Jack | last post by:
Hi All, What is the PHP equivilent of Oracle bind variables in a SQL statement, e.g. select x from y where z=:parameter Which in asp/jsp would be followed by some statements to bind a value...
3
by: Sandwick | last post by:
I am trying to change the size of a drawing so they are all 3x3. the script below is what i was trying to use to cut it in half ... I get errors. I can display the normal picture but not the...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
1
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...
1
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...
0
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and...
0
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The...
0
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
0
muto222
php
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.