473,765 Members | 2,010 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Orcas C++ - still monolithic headers?

After reading the good news concerning STL/CLI in Orcas C++, the next
question is:

Does anybody know whether Orcas C++ still uses monolithic header files
containing all definitions and declarations, or will there be "real
header files" containing only declarations?

Richard
Oct 6 '06 #1
5 1579
R.Kaiser wrote:
Does anybody know whether Orcas C++ still uses monolithic header files
containing all definitions and declarations
Yes, monolithic header files in the Sep CTP.

Tom
Oct 6 '06 #2
"Tamas Demjen" <td*****@yahoo. comwrote in message
news:uU******** ******@TK2MSFTN GP04.phx.gbl...
R.Kaiser wrote:
>Does anybody know whether Orcas C++ still uses monolithic header files
containing all definitions and declarations

Yes, monolithic header files in the Sep CTP.
I assume you're talking about Windows Forms designer generated classes?

Personally, I wouldn't expect that to ever change - but who knows :) The
problem is, the designers are not maintained by the C++ team, so getting the
designer to support a separation of declaration/definition requires getting
another group to do work that's of no benefit to their own product.

-cd
Oct 6 '06 #3
Carl Daniel [VC++ MVP] schrieb:
"Tamas Demjen" <td*****@yahoo. comwrote in message
news:uU******** ******@TK2MSFTN GP04.phx.gbl...
>R.Kaiser wrote:
>>Does anybody know whether Orcas C++ still uses monolithic header files
containing all definitions and declarations
Yes, monolithic header files in the Sep CTP.

I assume you're talking about Windows Forms designer generated classes?
Yes.
Personally, I wouldn't expect that to ever change - but who knows :) The
problem is, the designers are not maintained by the C++ team, so getting the
designer to support a separation of declaration/definition requires getting
another group to do work that's of no benefit to their own product.
Somewhere (I can't remember where) I read of an announcement that future
versions of Visual C++ allow you to write classes that are split on
several source files, just like C# partial classes. If you split the
currently monolithic Forms class into one file with the declarations and
into another file with the definitions, these would be traditional
interface/implementation files.

Or did I get something wrong?

Thanks
Richard

-cd

Oct 6 '06 #4
Carl Daniel [VC++ MVP] wrote:
I assume you're talking about Windows Forms designer generated classes?
Yes, I assume that's what the original poster meant.
Personally, I wouldn't expect that to ever change - but who knows :) The
problem is, the designers are not maintained by the C++ team, so getting the
designer to support a separation of declaration/definition requires getting
another group to do work that's of no benefit to their own product.
I realize that, but C++/CLI is claimed to be the primary .NET language.
Changing the designer would obviously benfit Visual Studio as a whole.
Although I'm not sure what percentage of the developers design GUI in
C++/CLI.

Fortunately it's not too hard to move the event handler implementations
to the .cpp file, but it's a major inconvenience. I don't think it would
be too hard to implement that feature (to generate an entry to the
header file as well as the .cpp, as Borland C++Builder does it), and it
would save a lot of time to the developers. I really insist that event
handlers are implemented in the .cpp file.

Moving the InitializeCompo nent to the .cpp file is a little bit less
important. Yes, it's annoying that moving an edit box around triggers a
recompile to other units, but frankly, most changes to the form do.
Typically when the GUI changes it involves adding new controls, thus new
declarations. Let's face it, most designer changes would trigger a
recompile to other modules anyway.

It would still be appreciated if moving a component, or changing its
color, wouldn't trigger any changes to any header file. It still has
much less impact than the event handlers.

At least this issue with monolithic header files enforces developers to
consider the separation of the GUI from the business logic, which I
personally support even in smaller projects, except maybe in quick and
dirty prototypes. The rest of the application logic should not depend on
the implementation of a particular component. Let's say a year into the
development you change from list box to list view, or from a Microsoft
component to a 3rd party with a different interface. It's definitely not
nice if such a change requires the editing of 100 function calls and
property references all across the project. So it's probably safe to say
that if the designer's inability of maintaining a separate .cpp file
causes enormous dependency issues, the project itself has architectural
issues. I tend to wrap forms into form managers, and the majority of the
code interacts with the form manager, without even including the forms'
header file.

Tom
Oct 6 '06 #5

"Tamas Demjen" <td*****@yahoo. comwrote in message
news:Oo******** ******@TK2MSFTN GP02.phx.gbl...
Carl Daniel [VC++ MVP] wrote:
>I assume you're talking about Windows Forms designer generated classes?

Yes, I assume that's what the original poster meant.
>Personally, I wouldn't expect that to ever change - but who knows :)
The problem is, the designers are not maintained by the C++ team, so
getting the designer to support a separation of declaration/definition
requires getting another group to do work that's of no benefit to their
own product.

I realize that, but C++/CLI is claimed to be the primary .NET language.
Changing the designer would obviously benfit Visual Studio as a whole.
Although I'm not sure what percentage of the developers design GUI in
C++/CLI.

Fortunately it's not too hard to move the event handler implementations to
the .cpp file, but it's a major inconvenience. I don't think it would be
too hard to implement that feature (to generate an entry to the header
file as well as the .cpp, as Borland C++Builder does it), and it would
save a lot of time to the developers. I really insist that event handlers
are implemented in the .cpp file.

Moving the InitializeCompo nent to the .cpp file is a little bit less
important. Yes, it's annoying that moving an edit box around triggers a
recompile to other units, but frankly, most changes to the form do.
Typically when the GUI changes it involves adding new controls, thus new
declarations. Let's face it, most designer changes would trigger a
recompile to other modules anyway.

It would still be appreciated if moving a component, or changing its
color, wouldn't trigger any changes to any header file. It still has much
less impact than the event handlers.

At least this issue with monolithic header files enforces developers to
consider the separation of the GUI from the business logic, which I
personally support even in smaller projects, except maybe in quick and
dirty prototypes. The rest of the application logic should not depend on
the implementation of a particular component. Let's say a year into the
development you change from list box to list view, or from a Microsoft
component to a 3rd party with a different interface. It's definitely not
nice if such a change requires the editing of 100 function calls and
property references all across the project. So it's probably safe to say
that if the designer's inability of maintaining a separate .cpp file
causes enormous dependency issues, the project itself has architectural
issues. I tend to wrap forms into form managers, and the majority of the
code interacts with the form manager, without even including the forms'
header file.
Use an interface class and then nothing need include the form's header file
except its single .cpp
>
Tom

Oct 10 '06 #6

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

Similar topics

1
1524
by: Lior Bobrov | last post by:
Hi . Due to Microsoft's roadmap for years 2004-2005 , Visual Studio codenamed "Orcas" should be released in 2005 . But , as we know , Visual Studio codenamed "Whidbey" (which was originally planned to be released in 2004) will be released in 2005 . In addition , it was written in the MS Roadmap document that Visual Studio "Orcas" will use the interface of Windows Longhorn . Due to MS site , Windows Longhorn should be released in...
4
1566
by: David Veeneman | last post by:
Will Orcas target Windows XP (using .NET 3.0) when using WPF, or will it only target Vista? I'm getting ready to start a project on which I'd like to use WPF, but I'm going to have to target both XP and Vista computers. Thanks David Veeneman Foresight Systems
2
4691
by: dejavue82 | last post by:
Does anybody know how to resolve the following errors? They were caused by the designer.cs file that was auto-generated by the LINQ to SQL designer. I am using the March 2007 Orcas CTP version of Visual Studio. Error 1 The type or namespace name 'Linq' does not exist in the namespace 'System.Data' (are you missing an assembly reference?) C: \Documents and Settings\HP_Administrator\My Documents\Visual Studio
9
1312
by: squishy | last post by:
So what new suprises are in store for us with Orcas? I am downloading the VPC now to try it out myself. But, I will go out on a very sturdy limb here and say that MS will try and get developers to code to Vista with Orcas and not worry so much if it is backwards compatable with XP or even VS 2005. Microsoft has made it clear that backwards compatability is no longer a priority. The question is, just how long will developers (and the...
5
1899
by: nhmark64 | last post by:
Hi, What is the relationship between "Microsoft .NET Framework 3.5 – Beta 1" and "Visual Studio Code Name "Orcas" Beta 1"? Should I install 1 first than the other, or just 1? I need to start a C# LINQ project for my job. Thanks, Mark
8
1590
by: subtle | last post by:
I've installed Orcas beta1 March 2007 CTP. I get compiler errors on any LINQ related code. For example: List<stringcities = new List<string>(); cities.Add("London"); cities.Add("Paris"); cities.Add("Las Vegas"); var holdit = from city in cities where city.Length 4 select city.ToUpper();
1
1165
by: somequestion | last post by:
hi there ! i have some project using app_code in asp.net of vs2005 these project converted to orcas version but class in app_code is not working.. is orcas not support? how do i do?
35
2256
by: Jon Skeet [C# MVP] | last post by:
Just in case anyone else hadn't noticed (like me!), Visual Studio 2008 (Orcas) Beta 2 has shipped. The best starting point is probably Scott Guthrie's blog (which contains download links etc): http://weblogs.asp.net/scottgu/archive/2007/07/26/vs-2008-and-net-3-5-beta-2-released.aspx Jon
5
1568
by: Showjump | last post by:
Just wondering how many of you all are using VS2008 bETA 2 to work on 2.0 projects? I dl'd the beta 2 release but have not installed ityet because i was concerned about future uninstall when the RTM/RC version is out and the possibility of breaking 2.0 stuff when i uninstall. Any valid concerns? Ashok
0
10163
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
9835
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...
0
8832
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, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own.... Now, this would greatly impact the work of software developers. The idea...
1
7379
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
6649
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 then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
5276
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...
0
5423
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
3924
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
3532
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.