Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. General Programming
  3. C / C++ / MFC
  4. Upgrading to Visual C++.Net 2005

Upgrading to Visual C++.Net 2005

Scheduled Pinned Locked Moved C / C++ / MFC
c++csharpdotnetquestiondiscussion
18 Posts 4 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • C Christian Graus

    desmondling78 wrote: Well, I do a fair bit of development in C++. I suppose I would rate myself an average developer? Sure - the best thing to do is get a copy of the beta and see if your code compiles. If you've learned from reading books, you should be fine. If you've learned by seeing what the compiler accepts, you could be in trouble. One other bit of good news, if you use the STL, the STL that comes with .NET is a world away from the VC6 one, the VC6 one is crap. desmondling78 wrote: Currently, I'm learning VB.Net including ASP.Net Why not C#, given that you have a C++ background ? VB.NET syntax is really hard to get used to, compared to C#, if your background is in programming ( that is, C++ rather than VB6 ). desmondling78 wrote: Since .Net has changed a lot, where do you think I should start so as to get myself up-to-date? Well, you don't need .Net to do C++, in fact you can't have it if you don't want to depend on the framework. If you're asking from the ASP.NET angle, I'd say still buy some good ASP.NET 1.1 books, then read on 2.0 later, because not so much has changed, stuff has been added. And one other thing - C# 2.0 has some really cool features like templates, iterators, and anonymous methods. I don't know if VB.NET gets any of that, yet. desmondling78 wrote: I'm a little bit confused. Because there are people telling me this: If I develop an application that uses the .Net framework (such as the Systems namespace), then I need to ensure Win98 has the .Net framework installed before it will run. is that right? Absolutely, and in a lot of ways, obviously. ANY OS right now does not come with the framework preinstalled. The thing is, C++ is the only place where you CHOOSE to use the .NET framework, C# and VB.NET cannot live without it. So you will KNOWINGLY make your app rely on .NET ( the MFC app, this is ), but you can also choose not to add this dependancy. Christian Graus - Microsoft MVP - C++

    D Offline
    D Offline
    desmondling78
    wrote on last edited by
    #5

    One other bit of good news, if you use the STL, the STL that comes with .NET is a world away from the VC6 one, the VC6 one is crap. Really? Then I have to check it out. Cos STL is a really useful tool. Why not C#, given that you have a C++ background ? VB.NET syntax is really hard to get used to, compared to C#, if your background is in programming ( that is, C++ rather than VB6 ). Well, people have been asking me that question. Reason is for market value. There seems to be less work for vc++. Also, I wish to move to web applications. and VB.Net seems to be the way to go. But like you said it takes time to get used to VB syntax (and frankly i prefer C++ syntax). So you will KNOWINGLY make your app rely on .NET I see. Just one more last question then. The main reason for using Managed code is that it helps us handle garbage collection right? And that is provided by the .Net framework? Oh and one more question. When Visual C++.Net 2005 is released, will Microsoft still sell Visual C++.Net 2003? I am deciding on which to buy, but I wish to wait for the release of Visual C++.Net 2005. (I heard from some Microsoft Spokes person that it is slated for July~Aug released.) I'm just afraid by then, will they stop selling .Net 2003 (as is threatened by my suppliers).

    C K 2 Replies Last reply
    0
    • D desmondling78

      One other bit of good news, if you use the STL, the STL that comes with .NET is a world away from the VC6 one, the VC6 one is crap. Really? Then I have to check it out. Cos STL is a really useful tool. Why not C#, given that you have a C++ background ? VB.NET syntax is really hard to get used to, compared to C#, if your background is in programming ( that is, C++ rather than VB6 ). Well, people have been asking me that question. Reason is for market value. There seems to be less work for vc++. Also, I wish to move to web applications. and VB.Net seems to be the way to go. But like you said it takes time to get used to VB syntax (and frankly i prefer C++ syntax). So you will KNOWINGLY make your app rely on .NET I see. Just one more last question then. The main reason for using Managed code is that it helps us handle garbage collection right? And that is provided by the .Net framework? Oh and one more question. When Visual C++.Net 2005 is released, will Microsoft still sell Visual C++.Net 2003? I am deciding on which to buy, but I wish to wait for the release of Visual C++.Net 2005. (I heard from some Microsoft Spokes person that it is slated for July~Aug released.) I'm just afraid by then, will they stop selling .Net 2003 (as is threatened by my suppliers).

      C Offline
      C Offline
      Christian Graus
      wrote on last edited by
      #6

      desmondling78 wrote: Really? Then I have to check it out. Cos STL is a really useful tool. It's THE reason to upgrade IMO. In Microsoft's defence, the STL in VC6 was sold to them by Dinkumware, they were bound to it by contract. Dinkum knew all about their STL bugs, they went on to make money selling a replacement STL, which in effect meant you paid for the bugfixes on what they sold to Microsoft. desmondling78 wrote: Well, people have been asking me that question. Reason is for market value. There seems to be less work for vc++. Also, I wish to move to web applications. and VB.Net seems to be the way to go. But like you said it takes time to get used to VB syntax (and frankly i prefer C++ syntax). No, I'm asking why you don't write ASP.NET apps in C# instead of VB.NET, because the C# syntax is easier for a C++ programmer, because C#2.0 has compelling features for a C++ programmer, and because VB.NET is full of really crappy legacy stuff. desmondling78 wrote: I see. Just one more last question then. The main reason for using Managed code is that it helps us handle garbage collection right? And that is provided by the .Net framework? IMO the main reaons to use managed C++ are if you want to provide a bridge between C# and C++, or because you want access to stuff in the class libraries, for example, regular expressions. Garbage collection is worth nothing to me. desmondling78 wrote: When Visual C++.Net 2005 is released, will Microsoft still sell Visual C++.Net 2003? I doubt it very much. desmondling78 wrote: I am deciding on which to buy, but I wish to wait for the release of Visual C++.Net 2005. It's out in November. If you're going to do ASP.NET, go for 2005, definately. ASP.NET 2.0 has heaps of cool new stuff, and in addition, C# 2.0 has a lot of compelling features that should make you seriously reconsider VB.NET. Amongst them is the fact that ASP.NET apps can have pages written in both, so if you have to work on a crappy VB.NET project ( I say this because every VB.NET project I've been called in on was poorly written crap ), you can still write C# pages for it, if you want to. Christian Graus - Microsoft MVP - C++

      D 1 Reply Last reply
      0
      • C Christian Graus

        desmondling78 wrote: Really? Then I have to check it out. Cos STL is a really useful tool. It's THE reason to upgrade IMO. In Microsoft's defence, the STL in VC6 was sold to them by Dinkumware, they were bound to it by contract. Dinkum knew all about their STL bugs, they went on to make money selling a replacement STL, which in effect meant you paid for the bugfixes on what they sold to Microsoft. desmondling78 wrote: Well, people have been asking me that question. Reason is for market value. There seems to be less work for vc++. Also, I wish to move to web applications. and VB.Net seems to be the way to go. But like you said it takes time to get used to VB syntax (and frankly i prefer C++ syntax). No, I'm asking why you don't write ASP.NET apps in C# instead of VB.NET, because the C# syntax is easier for a C++ programmer, because C#2.0 has compelling features for a C++ programmer, and because VB.NET is full of really crappy legacy stuff. desmondling78 wrote: I see. Just one more last question then. The main reason for using Managed code is that it helps us handle garbage collection right? And that is provided by the .Net framework? IMO the main reaons to use managed C++ are if you want to provide a bridge between C# and C++, or because you want access to stuff in the class libraries, for example, regular expressions. Garbage collection is worth nothing to me. desmondling78 wrote: When Visual C++.Net 2005 is released, will Microsoft still sell Visual C++.Net 2003? I doubt it very much. desmondling78 wrote: I am deciding on which to buy, but I wish to wait for the release of Visual C++.Net 2005. It's out in November. If you're going to do ASP.NET, go for 2005, definately. ASP.NET 2.0 has heaps of cool new stuff, and in addition, C# 2.0 has a lot of compelling features that should make you seriously reconsider VB.NET. Amongst them is the fact that ASP.NET apps can have pages written in both, so if you have to work on a crappy VB.NET project ( I say this because every VB.NET project I've been called in on was poorly written crap ), you can still write C# pages for it, if you want to. Christian Graus - Microsoft MVP - C++

        D Offline
        D Offline
        desmondling78
        wrote on last edited by
        #7

        Garbage collection is worth nothing to me. haha its funny you said that. I thought its quite a useful thing considering we need not worry about memory leaks. No, I'm asking why you don't write ASP.NET apps in C# instead of VB.NET, because the C# syntax is easier for a C++ programmer, because C#2.0 has compelling features for a C++ programmer, and because VB.NET is full of really crappy legacy stuff. Ohh. Because I wish to pick up VB.Net as well. I suppose I can learn C# on my own time and it will be easier since I know C++. The main reason is I wish to be all-rounder...hoping to jack up my value! hah What are the improved features of Visual C++.Net 2005 compared to Visual C++.Net 2003 anyway?

        C K 2 Replies Last reply
        0
        • D desmondling78

          Garbage collection is worth nothing to me. haha its funny you said that. I thought its quite a useful thing considering we need not worry about memory leaks. No, I'm asking why you don't write ASP.NET apps in C# instead of VB.NET, because the C# syntax is easier for a C++ programmer, because C#2.0 has compelling features for a C++ programmer, and because VB.NET is full of really crappy legacy stuff. Ohh. Because I wish to pick up VB.Net as well. I suppose I can learn C# on my own time and it will be easier since I know C++. The main reason is I wish to be all-rounder...hoping to jack up my value! hah What are the improved features of Visual C++.Net 2005 compared to Visual C++.Net 2003 anyway?

          C Offline
          C Offline
          Christian Graus
          wrote on last edited by
          #8

          desmondling78 wrote: haha its funny you said that. I thought its quite a useful thing considering we need not worry about memory leaks. It's a nice story, but it's not true. If you allocate large objects, you still need to clean up after them, or they will linger for ages. desmondling78 wrote: Ohh. Because I wish to pick up VB.Net as well. Fair enough. Personally, I'd rather hammer nails into my head, but to each his own :-) desmondling78 wrote: What are the improved features of Visual C++.Net 2005 compared to Visual C++.Net 2003 anyway? Another 20 breaking changes for standards conformance. I was talking C#, the improved features include iterators, generics, anonymous methods, etc. The IDE has a lot of cool new stuff as well, including an XSLT debugger, if you're into that sort of thing. Christian Graus - Microsoft MVP - C++

          D K 2 Replies Last reply
          0
          • C Christian Graus

            desmondling78 wrote: haha its funny you said that. I thought its quite a useful thing considering we need not worry about memory leaks. It's a nice story, but it's not true. If you allocate large objects, you still need to clean up after them, or they will linger for ages. desmondling78 wrote: Ohh. Because I wish to pick up VB.Net as well. Fair enough. Personally, I'd rather hammer nails into my head, but to each his own :-) desmondling78 wrote: What are the improved features of Visual C++.Net 2005 compared to Visual C++.Net 2003 anyway? Another 20 breaking changes for standards conformance. I was talking C#, the improved features include iterators, generics, anonymous methods, etc. The IDE has a lot of cool new stuff as well, including an XSLT debugger, if you're into that sort of thing. Christian Graus - Microsoft MVP - C++

            D Offline
            D Offline
            desmondling78
            wrote on last edited by
            #9

            Fair enough. Personally, I'd rather hammer nails into my head, but to each his own Haha ok. I get what you mean. There are already lots of nails in my head:laugh: Hey thanx man. You're provided me with lots of info. Kudos!;)

            C 1 Reply Last reply
            0
            • D desmondling78

              Fair enough. Personally, I'd rather hammer nails into my head, but to each his own Haha ok. I get what you mean. There are already lots of nails in my head:laugh: Hey thanx man. You're provided me with lots of info. Kudos!;)

              C Offline
              C Offline
              Christian Graus
              wrote on last edited by
              #10

              desmondling78 wrote: Haha ok. I get what you mean. There are already lots of nails in my head Hell, I used to write asp websites, so I've got my fair share as well :P No worries, glad to help :-) Christian Graus - Microsoft MVP - C++

              1 Reply Last reply
              0
              • D desmondling78

                Hi all, I am a Visual C++ Developer using V6.0. Mostly I deal with MFC creating windows application. What are your opinions about me upgrading to Visual C++.Net 2005? It seems to be quite different from V6.0 from what I see. If I develop applications using MFC in .Net 2005, are there any issues that I should watch out for? What about manage and unmanaged code and the .Net framework? When I distribute my software, do I need to distribute the .Net framework for older OS such as Win98? Please give me your comments.

                P Offline
                P Offline
                peterchen
                wrote on last edited by
                #11

                You can still develop "classic" (non-.NET) apps in VC8 I am currently converting a largish VC6 Project to VC7.1 & VC8beta2 (VC7.1 so we can release even if VC8 is delayed again) The 5 major hassles in the conversion: - Standard-compliant compiler (VC6 -> d, I am a bit sloppy with templates, but there are also many other "fine points" of the standard that make stuff wrong) - safe string functions (VC7->VC8, strsafe.h, CRT, Windows String helpers) - header pogo (spent over two days to get the PROPVARIANT's work with #import again, and it involves nasty tricks. Note to self: document them) - the for loop variable scope (VC8) - whatever you have now, you need a new monitor (a top end PC is implied) Still it's absolutely worthwhile to upgrade. The the straw that broke my camels back were all the template stuff the VC6 compiler dosn't get right. (some template instantiations were not linked even though they were not called. In another case, which took me a week to find and isolate, the wrong template specialization was used. It's so bad we currently release patches in unoptimized builds, and I am stalling all major releases) My problem is that I have to keep the code compatible between the three (dev goes on on VC6, I need VC7.1 to be "ready for release", and I want to go to VC8 if I go through all the hassle), and I am refraining from the "compatibility switches" (sooner or later I have to give them up) It is a pain that MS isn't offering "compatibility headers" that make code using the safe string functions and the new ANSI <--> Unicode conversion compile under earleir compilers.


                Pandoras Gift #44: Hope. The one that keeps you on suffering.
                aber.. "Wie gesagt, der Scheiss is' Therapie"
                boost your code || Fold With Us! || sighist | doxygen

                K 1 Reply Last reply
                0
                • C Christian Graus

                  desmondling78 wrote: Well, I do a fair bit of development in C++. I suppose I would rate myself an average developer? Sure - the best thing to do is get a copy of the beta and see if your code compiles. If you've learned from reading books, you should be fine. If you've learned by seeing what the compiler accepts, you could be in trouble. One other bit of good news, if you use the STL, the STL that comes with .NET is a world away from the VC6 one, the VC6 one is crap. desmondling78 wrote: Currently, I'm learning VB.Net including ASP.Net Why not C#, given that you have a C++ background ? VB.NET syntax is really hard to get used to, compared to C#, if your background is in programming ( that is, C++ rather than VB6 ). desmondling78 wrote: Since .Net has changed a lot, where do you think I should start so as to get myself up-to-date? Well, you don't need .Net to do C++, in fact you can't have it if you don't want to depend on the framework. If you're asking from the ASP.NET angle, I'd say still buy some good ASP.NET 1.1 books, then read on 2.0 later, because not so much has changed, stuff has been added. And one other thing - C# 2.0 has some really cool features like templates, iterators, and anonymous methods. I don't know if VB.NET gets any of that, yet. desmondling78 wrote: I'm a little bit confused. Because there are people telling me this: If I develop an application that uses the .Net framework (such as the Systems namespace), then I need to ensure Win98 has the .Net framework installed before it will run. is that right? Absolutely, and in a lot of ways, obviously. ANY OS right now does not come with the framework preinstalled. The thing is, C++ is the only place where you CHOOSE to use the .NET framework, C# and VB.NET cannot live without it. So you will KNOWINGLY make your app rely on .NET ( the MFC app, this is ), but you can also choose not to add this dependancy. Christian Graus - Microsoft MVP - C++

                  K Offline
                  K Offline
                  Kevin McFarlane
                  wrote on last edited by
                  #12

                  Christian Graus wrote: I don't know if VB.NET gets any of that, yet. It gets generics. I don't think it gets the other two. Kevin

                  1 Reply Last reply
                  0
                  • D desmondling78

                    One other bit of good news, if you use the STL, the STL that comes with .NET is a world away from the VC6 one, the VC6 one is crap. Really? Then I have to check it out. Cos STL is a really useful tool. Why not C#, given that you have a C++ background ? VB.NET syntax is really hard to get used to, compared to C#, if your background is in programming ( that is, C++ rather than VB6 ). Well, people have been asking me that question. Reason is for market value. There seems to be less work for vc++. Also, I wish to move to web applications. and VB.Net seems to be the way to go. But like you said it takes time to get used to VB syntax (and frankly i prefer C++ syntax). So you will KNOWINGLY make your app rely on .NET I see. Just one more last question then. The main reason for using Managed code is that it helps us handle garbage collection right? And that is provided by the .Net framework? Oh and one more question. When Visual C++.Net 2005 is released, will Microsoft still sell Visual C++.Net 2003? I am deciding on which to buy, but I wish to wait for the release of Visual C++.Net 2005. (I heard from some Microsoft Spokes person that it is slated for July~Aug released.) I'm just afraid by then, will they stop selling .Net 2003 (as is threatened by my suppliers).

                    K Offline
                    K Offline
                    Kevin McFarlane
                    wrote on last edited by
                    #13

                    desmondling78 wrote: Oh and one more question. When Visual C++.Net 2005 is released, will Microsoft still sell Visual C++.Net 2003? I am deciding on which to buy, but I wish to wait for the release of Visual C++.Net 2005. (I heard from some Microsoft Spokes person that it is slated for July~Aug released.) I'm just afraid by then, will they stop selling .Net 2003 (as is threatened by my suppliers). As Christian said, it's due out in November. However, if you want to use VC++ 2003 and not have to pay again, or pay the upgrade price, then it might be worthwhile to get an MSDN Subscription. That will automatically entitle you to VC++ 2005 (VS 2005) when it comes out. Check the options and pricing on the MS site. I think MS are currently selling a package called "VS 2003 with MSDN Subscription." Kevin

                    1 Reply Last reply
                    0
                    • D desmondling78

                      Garbage collection is worth nothing to me. haha its funny you said that. I thought its quite a useful thing considering we need not worry about memory leaks. No, I'm asking why you don't write ASP.NET apps in C# instead of VB.NET, because the C# syntax is easier for a C++ programmer, because C#2.0 has compelling features for a C++ programmer, and because VB.NET is full of really crappy legacy stuff. Ohh. Because I wish to pick up VB.Net as well. I suppose I can learn C# on my own time and it will be easier since I know C++. The main reason is I wish to be all-rounder...hoping to jack up my value! hah What are the improved features of Visual C++.Net 2005 compared to Visual C++.Net 2003 anyway?

                      K Offline
                      K Offline
                      Kevin McFarlane
                      wrote on last edited by
                      #14

                      desmondling78 wrote: Ohh. Because I wish to pick up VB.Net as well. I suppose I can learn C# on my own time and it will be easier since I know C++. The main reason is I wish to be all-rounder...hoping to jack up my value! hah I think it's certainly worthwhile being able to read the syntax of both languages. That way you can translate samples from one to the other when required. Kevin

                      1 Reply Last reply
                      0
                      • C Christian Graus

                        desmondling78 wrote: haha its funny you said that. I thought its quite a useful thing considering we need not worry about memory leaks. It's a nice story, but it's not true. If you allocate large objects, you still need to clean up after them, or they will linger for ages. desmondling78 wrote: Ohh. Because I wish to pick up VB.Net as well. Fair enough. Personally, I'd rather hammer nails into my head, but to each his own :-) desmondling78 wrote: What are the improved features of Visual C++.Net 2005 compared to Visual C++.Net 2003 anyway? Another 20 breaking changes for standards conformance. I was talking C#, the improved features include iterators, generics, anonymous methods, etc. The IDE has a lot of cool new stuff as well, including an XSLT debugger, if you're into that sort of thing. Christian Graus - Microsoft MVP - C++

                        K Offline
                        K Offline
                        Kevin McFarlane
                        wrote on last edited by
                        #15

                        Christian Graus wrote: It's a nice story, but it's not true. If you allocate large objects, you still need to clean up after them, or they will linger for ages. Most things are a trade-off but I'd rather have garbage collection than not have it. Language designers such as Gosling, Heljsberg and Meyer seem to have reached that conclusion too. They could all be wrong I suppose. Kevin

                        1 Reply Last reply
                        0
                        • P peterchen

                          You can still develop "classic" (non-.NET) apps in VC8 I am currently converting a largish VC6 Project to VC7.1 & VC8beta2 (VC7.1 so we can release even if VC8 is delayed again) The 5 major hassles in the conversion: - Standard-compliant compiler (VC6 -> d, I am a bit sloppy with templates, but there are also many other "fine points" of the standard that make stuff wrong) - safe string functions (VC7->VC8, strsafe.h, CRT, Windows String helpers) - header pogo (spent over two days to get the PROPVARIANT's work with #import again, and it involves nasty tricks. Note to self: document them) - the for loop variable scope (VC8) - whatever you have now, you need a new monitor (a top end PC is implied) Still it's absolutely worthwhile to upgrade. The the straw that broke my camels back were all the template stuff the VC6 compiler dosn't get right. (some template instantiations were not linked even though they were not called. In another case, which took me a week to find and isolate, the wrong template specialization was used. It's so bad we currently release patches in unoptimized builds, and I am stalling all major releases) My problem is that I have to keep the code compatible between the three (dev goes on on VC6, I need VC7.1 to be "ready for release", and I want to go to VC8 if I go through all the hassle), and I am refraining from the "compatibility switches" (sooner or later I have to give them up) It is a pain that MS isn't offering "compatibility headers" that make code using the safe string functions and the new ANSI <--> Unicode conversion compile under earleir compilers.


                          Pandoras Gift #44: Hope. The one that keeps you on suffering.
                          aber.. "Wie gesagt, der Scheiss is' Therapie"
                          boost your code || Fold With Us! || sighist | doxygen

                          K Offline
                          K Offline
                          Kevin McFarlane
                          wrote on last edited by
                          #16

                          peterchen wrote: the for loop variable scope (VC8) Thought this was fixed in VC7? Kevin

                          P 1 Reply Last reply
                          0
                          • K Kevin McFarlane

                            peterchen wrote: the for loop variable scope (VC8) Thought this was fixed in VC7? Kevin

                            P Offline
                            P Offline
                            peterchen
                            wrote on last edited by
                            #17

                            I'm not quite sure, maybe if you import a project into VC7, it sets the compatibility option by default. (With default imported settings, VC7.1 doesn't complain, but VC8 does)


                            Pandoras Gift #44: Hope. The one that keeps you on suffering.
                            aber.. "Wie gesagt, der Scheiss is' Therapie"
                            boost your code || Fold With Us! || sighist | doxygen

                            K 1 Reply Last reply
                            0
                            • P peterchen

                              I'm not quite sure, maybe if you import a project into VC7, it sets the compatibility option by default. (With default imported settings, VC7.1 doesn't complain, but VC8 does)


                              Pandoras Gift #44: Hope. The one that keeps you on suffering.
                              aber.. "Wie gesagt, der Scheiss is' Therapie"
                              boost your code || Fold With Us! || sighist | doxygen

                              K Offline
                              K Offline
                              Kevin McFarlane
                              wrote on last edited by
                              #18

                              Not tried that. I think I just started a new project and tried out a loop. I've not really used C++ in anger under VC++ 7.1. Since .NET came out all the C++ work I've done has been under VC++ 6, or else I've been doing C#. Kevin

                              1 Reply Last reply
                              0
                              Reply
                              • Reply as topic
                              Log in to reply
                              • Oldest to Newest
                              • Newest to Oldest
                              • Most Votes


                              • Login

                              • Don't have an account? Register

                              • Login or register to search.
                              • First post
                                Last post
                              0
                              • Categories
                              • Recent
                              • Tags
                              • Popular
                              • World
                              • Users
                              • Groups