473,781 Members | 2,683 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Disappointment in VC++ .Net in VS2008

Why bother having Stan Lippman and Herb Sutter created a C++/CLI
language for .Net development when Microsoft, and the VC++ development
team, are so clearly intent on limiting .Net development with C++/CLI to
the smallest subset of .Net development technologies in Visual Studio,
while all of the new technologies are given to C# instead ? The bubble
has burst with VS 2008 and we are instead finally told quite frankly, by
a lead VC++ team developer, that VC++ is not going to be a first-class
..Net development language. In that case why bother with C++/CLI, since
it serves little to no purpose for C++ programmers anymore. Here is the
lineup:

1) ASP .NET, not for C++
2) Web services in .Net, not for C++ and even web services client
development is removed in VS 2008.
3) WPF, not for C++ and even creating controls for WPF is absent for
C++/CLI.
4) WCF, not for C++.
5) WWF, not for C++
6) LINQ, not for C++.

Finally all advanced web application development is remove from C++ with
the abandonment of the ATL Server.

VS 2008 is an abortion for C++ .Net developers in every way. The message
is now clear from Microsoft and the pretense is finally dropped "If you
want to do .Net development in C++, just forget about it and start
programming in C#". It should have been clear from the beginning, with
the miraculously appearing loader lock bug, but now is transparent.

Instead the big news in VC++ for VS 2008 is Vista updates for MFC of all
technologies. Gee, I am sure glad I learned a RAD technology like .Net
so I could go back to doing MFC development.

C++/CLI is such a good language, with so much careful and intelligent
decisions made so that it is superior to C# in almost every way, that it
is sad to finally realize that Microsoft never had any plans for C++
developers to effectively compete with C# developers in the .Net world.
It was just a sop so that they could attract C++ developers and turn
them toward C#.

Stan Lippman, Herb Sutter, Brandon Bray, and others, you should all be
ashamed of yourselves in leading VC++ straight to a dead end of
programming for .Net.
Dec 22 '07
53 2368
"Norman Diamond" <nd******@commu nity.nospamwrot e in message
news:ea******** ******@TK2MSFTN GP05.phx.gbl...
I see no mention of version and compiler independence in the message that
you cited. If there were then it would surely be wrong.

There is no requirement for two compilers to agree on the length of a
long. There is no requirement for two compilers to agree on the
representation of negative numbers (one could use one's complement and one
could use two's complement) though of course for performance reasons most
sensible compilers for a single platform will agree on that. Two versions
of a single compiler might disagree on whether wchar_t is a separate type
or just a typedef for one of the integral types.

In P/Invoke, the caller's coder has to specify types that will map onto
the same number of bits and endianness and everything that the callee is
going to expect. But I didn't think this would depend on whether COM is
being used or not.
By using abstract interface classes, memory management issues are avoided
(as no data is specified). Because the only memory is the class's v-table
which is a 4 byte pointer in C compilers (all the ones that matter, anyway).
Of course, there are data types in params to the interface methods which
need to be compatible, but with Windows compilers, these are pretty standard
anyway. I haven't had a problem with this scheme with different versions of
VC++, but I'm not sure about compatibility with something like GNU. I
imagine Borland compilers would be OK too.

-- David
Dec 27 '07 #51
"Edward Diener" <ed************ *******@tropics oft.comwrote in message
news:%2******** *******@TK2MSFT NGP03.phx.gbl.. .
>
It is hard for me to believe that improving MFC instead of improving .Net
programming should have been the focus of the VC++ team in the year 2008.
I am sure it is helpful to those C++ programmers who are still working
with lagacy MFC applications, but I view .Net as a huge step above MFC in
overall programming technology. Since I am pretty unhappy with the focus
VC++ took toward the past, I sure hope people programming MFC are happy
with what they got. Of the mainstream VC++ technologies, .Net programming,
standard C++ programming, and MFC programming I view the latter as easily
the poorest of the lot.
It is a fact that, as of now, .Net programming is little used by Independent
Software Vendors (ISVs), which overwhelmingly use native code. "Legacy"
applications include almost all of the major desktop applications and
Windows itself. Native will continue to dominate these spaces for some years
to come. Not all of these applications use MFC, but a lot do.

john carson
Dec 27 '07 #52
David Ching wrote:
By using abstract interface classes, memory management issues are avoided
(as no data is specified). Because the only memory is the class's v-table
which is a 4 byte pointer in C compilers (all the ones that matter, anyway).
Of course, there are data types in params to the interface methods which
need to be compatible, but with Windows compilers, these are pretty standard
anyway. I haven't had a problem with this scheme with different versions of
VC++, but I'm not sure about compatibility with something like GNU. I
imagine Borland compilers would be OK too.
As long as a C++ compiler supports COM, it is guaranteed that abstract
virtual methods will work. On non-Microsoft platforms, however, there
are no guarantees regarding v-table compatibility.

With Borland compilers the most important compatibility issue is with
enum (it defaults to 8-bit in C++Builder, while it is int-sized in VC++).

Tom
Dec 27 '07 #53

"Tamas Demjen" <td*****@yahoo. comwrote in message
news:%2******** ********@TK2MSF TNGP02.phx.gbl. ..
David Ching wrote:
>By using abstract interface classes, memory management issues are avoided
(as no data is specified). Because the only memory is the class's
v-table which is a 4 byte pointer in C compilers (all the ones that
matter, anyway). Of course, there are data types in params to the
interface methods which need to be compatible, but with Windows
compilers, these are pretty standard anyway. I haven't had a problem
with this scheme with different versions of VC++, but I'm not sure about
compatibilit y with something like GNU. I imagine Borland compilers would
be OK too.

As long as a C++ compiler supports COM, it is guaranteed that abstract
virtual methods will work. On non-Microsoft platforms, however, there are
no guarantees regarding v-table compatibility.
On many (most?) non-Microsoft platforms, there is an ABI specification
(application binary interface) providing much better guarantees regarding
compatibility.
>
With Borland compilers the most important compatibility issue is with enum
(it defaults to 8-bit in C++Builder, while it is int-sized in VC++).

Tom

Dec 27 '07 #54

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

Similar topics

1
1998
by: Homer | last post by:
Hi All, In my work place we are still using VS6.00 with C++ and are not allowed to use a newer version (to connect to source control). We also use ClearCase as source control software. What I did was to install VS 2008 Beta 1 on my machine and made a copy of my source directory to use VS2008 with it. I want to use VS2008 only as my editor and don't want to check-in/check-out with it (since my company doesn't like it). When I open my...
6
1388
by: =?Utf-8?B?RGlwZXNoX1NoYXJtYQ==?= | last post by:
Hi all, I am porting an code written in VC++ to VC.Net to make it manage. But in Managed VC we dont use "const" keyboard at all. but my code is using it very frequently, so is their any alternative to it or we have to remove the "const" keyword from our code completely. Please suggest me the solution. Secondly i am getting one error as:: error C4439: 'function_name' : function definition with a managed type in the signature must have a...
9
1945
by: =?Utf-8?B?UmFqZXNoYXowOQ==?= | last post by:
I heared that microsoft give technical support to vb upto this year end. Can any one microsoft stops techinical support for vc++(6.0)? was microsoft announced any official date?
9
1851
by: =?Utf-8?B?S3VlaXNoaW9uZyBUdQ==?= | last post by:
What is the difference between the regular VC++ edition and the VC++ express edition? If there is not too much difference in functionality, why the express edition is free?
20
2896
by: Iouri | last post by:
Hi everybody, We are currently using VS2003 and now we are in the porcess of upgrading to the next Visual Studio version. Does somebody have a real life experience with VS2008? My boss wants to go with VS2005 and I am trying to convince to buy VS2008. Can somebody provide links to compare 2 products in terms of how stable they are. I do not need VS2008 new features, I need to prove to my management that VS2008 is a stable product. TIA
2
2444
by: Academia | last post by:
I have vs2005 installed on the System disk and vs2008 installed on a different disk. I want to remove VS2005. I read one time about some problem with uninstalling vs2005 after vs2008 is installed but can't find the site now. Is there a problem? Would reinstalling vs2008 fix any problem that may occur because of uninstalling vs2005.
2
1763
by: goo.one1 | last post by:
Hi All, I'm looking for info on how to port VC++ 6 code/projects to VC++ 9 (2008). I noticed that there is a converter built-in for Visual *BASIC* to convert from VS6 to 9... I have found the following brief note:
6
2695
by: =?Utf-8?B?S3VlaXNoaW9uZyBUdQ==?= | last post by:
I want to create a sound to alert the user when some event occurs. How do I do it from my VC++ .NET window form program?
3
5805
by: =?Utf-8?B?SmFtZXMgV29uZw==?= | last post by:
Hi everybody, There is a fatal error while installing VS2008 SP1 on Vista 64bit Business edition. The last line of error log is Installation failed with error code: (0x80070643) I tried to uninstall Silverlight first (which is described in some blogs) and install .NET framework 3.5 SP1 manually but still failed. My VS2008 is Team Suit for developer and Vista SP1 is also installed.
0
9474
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
0
10308
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
0
10143
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 tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
1
10076
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 Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
0
9939
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
1
7486
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 presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
5375
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 last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
1
4040
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
2
3633
muto222
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.