Yes, it makes perfect sense. That's why Microsoft developed
this in the first place. Essentially, you are following the "road
to [development] hell paved with good intentions"...
Hello Alexander
Thanks for that response.
Regarding usurping the interface-implementation model:
I find that, indeed, an attributed ATL COM class produces a definition
(skeleton implementation) for what should be just an interface. (Is
this what you mean?)
But I find I can simply ignore this (I think I've even deleted it
without issue) and use the 'Implement Interface' facility to create the
actual implementations that I want. It seems to work fine for simple
cases and saves producing frightful-looking COM code as well as keeping
everything nice & tidy.
(Remembering that I must consider my colleagues)
Hope that makes sense!
David
Alexander Nickolov wrote:
Microsoft's response to the serious bugs in attributed ATL COM
was to disable attributes in ATL projects by default in VC 8.
Attributed ATL COM is especially bad from design standpoint -
it contradicts the main design principle behind COM - separating
interface from implementation. However, understand that attributes
do have their uses, for example ATL's OLE DB support and
ATL Server are very good examples where attributes contribute
significant value.
BTW, your question the way you stated it is not exactly meaningful.
What is a C++ attribute? Things like __declspec(thread) for
example. These are here to stay for sure and nobody complains
about them.
--
=====================================
Alexander Nickolov
Microsoft MVP [VC], MCSD
email: agnickolov@mvps.org
MVP VC FAQ: http://www.mvps.org/vcfaq
=====================================
<dgreen@dsl.pipex.com> wrote in message
news:1159824714.396628.276740@e3g2000cwe.googlegroups.com...
Is there any progress in understanding Microsoft's policy on C++
Attributes?
I'm trying to introduce COM into our development environment because it
has some significant benefits both in my own programs and possibly in a
wider context.
I very much wanted to show that it was not too hard to do.
Now; if I generate reams of inscrutable code people might think it is
far too hard and impractical.
So I chose Attributes as a way to get things going (and save myself
some effort!).
Recently I have started to realise that Microsoft may be abandoning
Attributed classes and this rather undermines my position.
The current code does work but I understand that, for example, if I try
to use connection points(likely) this will cause me grief.
Have Microsoft passed any comments or fixed any of the bugs that,
seemingly, have been intoduced with Studio 2005?
David Green