有谁抛弃了MFC在编程呢?我是个初学者,但我发现以下几点:一:没有visual c++.net设计器,所以在visual c++.net中,必须通过编写代码来创建和填充窗体,最基本的也要new控件、设置控件大小和位置、添加控件到容器、添加事件响应函数,感觉又回到了用JDK写java程序的时候(一个记事本就搞定了,其它就是编译器,感觉就两个字——杀人),不信者在一个窗体上添加五六个标准控件看看需要多少行程序!
注:我用的.net版本是是visual studio.net 2003,框架版本v1.1.4322,如果现在有新版本解决了以上问题请告知一声。二:没有多/单文档概念。三:在托管编程的时候,感觉上已很难发现它与java和vb有什么区别了,几乎完全属性操作,连基本数据类型也要封装成类,如Int32类,就
是一个int加点属性和方法,那么VC的速度优势还会体现出来吗?从易用性看,它永远赶不上VB,如果VC在速度、灵活上的优势都没有了,那还有人会用它吗?四:VC向VB靠扰还有一点表面,就是VC++.net下已没有属性面板了,改成了VB式的一个列表框。这一点我想喜爱VC的人不太喜欢吧(因为要在一大堆属性中拖滚动条来查找,而原来的属性面板是通过属性页分类了的,每一类中属性不多,容易找到)?还有一些东西也换成了VB的了,如:label、form等(以前在VC中是static和dialog)。
再看一个.net framework的MSDN在筛选依据里选择“.net framework”,查找出来的东西完全成了java的doc的类似的形式(树形),更不可理解的是,假如查找Button,结果是button和它的祖先的所有属性方法全显示在一页上,造成的后果就是查找Button和RadioButton得到的结果大部分都是一样,看看原来MFC的,查CButton就是显示CButton特有的方法和属性,下面有查看父类的连接,这样不是很好吗?我一直认为是VC是最好的,但.net这样一改,感觉没有特色了!五:目前到底有多少人精通托管呢?我就遇到下面一个初级问题(请会者指教:这20分就是解决这个问题的):
    用C++托管,做出来的界面仍然不是XP界面!看来Button就是Button,永远都是个那样子了,不过这样做也有个好处就是Button会随操作系
统的不同而表现不同的外观,写死在程序中就不容易做到了,在MFC中通过写xml文件做XP界面我已会了,那么在C++托管中如果实现XP界面呢?欢迎大家对我上面的意见提出意见,千万不要说“可笑”,“白痴”之类的话,这里不应该因我水平差而被看不起,我觉得是。

解决方案 »

  1.   

    该贴发在.net技术栏,无人问津,不知道是我水平低还是人气差。
      

  2.   

    对楼主的看法就是取了VC糟柏, 弃了VC的精华
      

  3.   

    1、写软件本来就是写代码,.net程序把什么都以代码形式告诉你了,岂不是让你也明白很多来龙去脉么?MFC隐藏了很多实现细节,你都搞懂了么?另外.net里面添加了一些比如委托等更先进的实现方法,你都了解么?2、单/多文档本来就是代码写出来的一种特定的程序,但是实际中程序是千变万化的,不可能总是这一种形式。在.net里面,你可以用代码写出单/多文档形式的程序,也可以写成其它类型的程序。3、把int也封装成Int32类,正是现代面向对象技术的趋势。现在的软件在速度许可的情况下,更多体现的是面向对象、可移植等。当然,如果你写系统地层的软件,.net是不行的,这里才是汇编、C、C++展现雄姿的地方。4、这是你软件使用习惯的问题,应该与语言没有关系吧?5、界面都是人们用语言写出来的,XP界面只是其中的一种。当然,现在由于Windows的流行,好像大家只知道xp了。楼主有时间用用linux,那里面可是有十几种界面。归根结底,界面只是一种软件表现形式,我们不可沉溺于其中。软件 = 数据结构 + 算法,这个永远都是真理。
    至于你说的用.net实现xp界面,网上有很多的范例代码,你仔细找一下。
      

  4.   

    作XP风格的界面?
    http://www.yesky.com/SoftChannel/72342380468174848/20040117/1762812.shtml
    是不是你要的?
      

  5.   

    楼主的看法就是取了VC糟柏, 弃了VC的精华同意。
      

  6.   

    我用就是.net 2003啊?天天在设计器。不知道楼主是何意思?
      

  7.   

    MFC 只是一个界面框架,现在真正用MFC做界面的很少了,要不就是由于主程序要用C++写,顺便用MFC做界面算了。
    MFC 太复杂,做个界面累死人,再慢的界面也不会比人的反应慢吧现在,所以抛弃MFC用新的是很正常的。
    学习MFC的好处就像学习汇编的好处一样,如果不难不累人,我相信很多人都愿意会MFC的。
    如果对界面有特殊要求,用MFC吧,学好了C++也没有人会后悔的,他可以再去学Java啊,为什么不呢?可以再去做VBA开发啊,很好的东西啊。.net下能用C++,知足吧。不过微软也不敢不让.net用C++。
      

  8.   

    本人建议 用VC的话 就用MFC或者SDK 毕竟这些才是C++的精华所在
      

  9.   

    可以确定的是用 VC.NET managed code 就一定慢
    如果用 VC.NET 造的东西和 VB.NET 造的一样慢
    那我为什么走去 "慢慢" 写个比 VB6 还要慢的 C 呀?
    Microsoft 说 unmanaged code 仍可用到 MFC 和 VC6 无异
    更说 VC.NET unmanaged code 会比 VC6 快 10-25%
    错!!!
    最少 Compiler 不同了
    我在 Google 看不见说自己 Program 因转用 VC.NET 而快了10-25% 的人
    却看见大量说慢的人呢
    有人说同一样的 Code 在 VC.NET unmanaged 比 VC6 慢 4 倍
    又有人说同一样的 Code 在 VC6 行 0.5 秒 VC.NET 行 8 秒
    又有人说 VC.NET + ATL unmanaged 在 AMD CPU 行很慢
    绝对和 VC6, 和 Microsoft 所说的不一样
    况且要用 VC.NET 写 unmanaged code(不知所谓的名称)
    不如写 VC6 吧~!
      

  10.   

    没用过 VC.net 2003但它不是也带有  mfc 7.x 吗
      

  11.   

    楼主的看法就是取了VC糟柏, 弃了VC的精华同意。
      

  12.   

    其实MFC的基本思想已经远远落后于Borland的VCL,
    偶做界面一般用C++builder,非常快速,
    用VC作个DLL调用。
      

  13.   

    VS2003带有MFC7.1 ,提供的设计器也很好用,楼主可能没用惯。
    说实在的,MFC还比较好用,至少我喜欢
      

  14.   

    我说的是没有托管设计器。不要与MFC设计器搞混了!
      

  15.   

    其实MFC的基本思想已经远远落后于Borland的VCL,
    我不同意,也许是我不太用VCL吧。我学DELPHI只是一小段时间。现在VC也扔了一大段时间了。我改做机械了。  我认为,MFC的封装和继承比VCL要好,要直观。至于。NET,我感觉。NET比VC6更好。这只是感觉。就像出来任何一个新版本的东西,我都会马上升级。现在我用的工具是SOLIDWORKS,我已经升到2005了,比2004好多了。 你们感觉。NET不好用,是你们还没有太熟悉而已,就像刚刚从TURBOC2.0一下子跳到VC5一样,当时我跳了好久,才跳上来的。 现在,跳到。NET,不也是一个大台阶吗。   习惯就好。  再说。NET的速度。   它的速度也许真的比VC6快,GOOGLE说快了,但是,大家说慢了,也许是网速的问题,也许是用户量加多了。 这些,谁去统计过呢?总之,如果。NET比VC6差,那么微软那几千人,不都像中国科学院的那些一样白痴了吗。
      

  16.   

    GOOGLE说慢了..................................
    我在 Google 看不见说自己 Program 因转用 VC.NET 而快了10-25% 的人
    却看见大量说慢的人呢
    有人说同一样的 Code 在 VC.NET unmanaged 比 VC6 慢 4 倍
    又有人说同一样的 Code 在 VC6 行 0.5 秒 VC.NET 行 8 秒
    又有人说 VC.NET + ATL unmanaged 在 AMD CPU 行很慢