真心觉得C++没有C#好用了

defyfly 2013-07-05 05:17:21
如题,编程方面我算新手,才一年的工作经验,一直用的是VC。最近工作中,想把别人用C#写的一个程序我用VC来“翻译”过来,正好也练练手学点东西。但是在这个过程中,我越发觉得VC好多东西没有C#好用,下面列举一些吧:
1、界面:在那个程序中,需要点击不同菜单下面显示不同的界面,我看了下C#中,只需要将不用的界面设计成UserControl,然后在主界面的Panel中用Panel.Controls.add(UserControl)就可以了,VC中感觉要实现这样肯定很麻烦;另外,C#中关于各控件的详细设计在designer.cs中都可以看的很清楚,而VC则只能在属性页里简单设置,没有显式的代码;又比如,C#中有tooltip这么方便的提示控件……
2、数据库操作:我看了下那个程序中对数据库的调用相当的方便,可以直接返回dataset、datatable这么强大的容器来用。相应的,我去学习下C++中对数据库的操作,感觉挺繁琐的,也好像没有上面那两种类型可用吧?

就不多列举了,小弟才疏学浅,可能很多东西VC也有,或者VC实现起来也很方便只是我不知道而已。也看了一些评论,说微软下面将把C#作为重点发展对象,C++可能在内核方面比C#优势大,作为应用开发语言,是不是C#各方面都比C++好用?我正考虑要好好学下C#,将来做项目,也许可以省很多力。

想听听各位前辈、大神的意见!
...全文
521 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
C#比C++多了一层中间语言Common Intermediate Language,相当于C#使用C++封装好的标准库,这样C#用更方便的标准库做界面和网络等效率比较高,但是C#在运行的时候生成计算机的语言再去运行,C++可以直接生成计算机语言,这是C++更适合底层的原因
defyfly 2013-07-08
  • 打赏
  • 举报
回复
引用 5 楼 sunxingzhesun 的回复:
做界面方面的设计确实是C#效率更高,C#使用的是C++的标准库,C++是基础,C++做的东西多了,C#有局限
我说为什么版主为什么会那么问,原来C#和C++有这种联系。小弟确实理解不深,还要慢慢的摸索这两张语言的本质联系与区别,但各位的回答已经让我有了一些粗面的了解,感谢。
本拉灯 2013-07-07
  • 打赏
  • 举报
回复
引用 7 楼 sunxingzhesun 的回复:
我听说硬件驱动程序,系统程序等都是C#所不能作的
那要看是什么样的硬件。。。如果是串口+单片机,那是可以搞的。 当然很多人把硬件都理解成像显卡声卡这类的。
  • 打赏
  • 举报
回复
我听说硬件驱动程序,系统程序等都是C#所不能作的
sizyx 2013-07-07
  • 打赏
  • 举报
回复
个人感觉C++比C#更底层一些
linrachel 2013-07-06
  • 打赏
  • 举报
回复
引用 2 楼 SocketUpEx 的回复:
[quote=引用 1 楼 caozhy 的回复:] 你能分清楚什么是C++、什么是VC++,什么是C++的类库么?
曹MVP又着相了 你能分清楚什么是鸡,什么是鸡蛋, 什么是蛋鸡, 什么是鸡蛋鸡么? [/quote] 曹大人说得没错
keith_cheung 2013-07-06
  • 打赏
  • 举报
回复
有C++基础学 C# 是非快的,我就是这样。 反过来,很多人不适应。
  • 打赏
  • 举报
回复
做界面方面的设计确实是C#效率更高,C#使用的是C++的标准库,C++是基础,C++做的东西多了,C#有局限
SocketUpEx 2013-07-05
  • 打赏
  • 举报
回复
引用 1 楼 caozhy 的回复:
你能分清楚什么是C++、什么是VC++,什么是C++的类库么?
曹MVP又着相了 你能分清楚什么是鸡,什么是鸡蛋, 什么是蛋鸡, 什么是鸡蛋鸡么?
threenewbee 2013-07-05
  • 打赏
  • 举报
回复
你能分清楚什么是C++、什么是VC++,什么是C++的类库么?
包含源代码,需要的可以自行下载。 把astyle.exe 复制到 C:\WINDOWS 目录里,省的指定路径 VC6++ 设置方法 菜单->工具->定制->工具菜单内容->新建菜单,参数如下 命令行:astyle.exe 变量: --style=k&r --brackets=break --indent=spaces --indent-cases --indent-preprocessor --pad-header --pad-oper --unpad-paren --keep-one-line-statements --keep-one-line-blocks --convert-tabs $(FileName)$(FileExt) 初始目录: $(FileDir) VC2008 外部工具里设置,还可以添加快捷键 命令:astyle.exe 参数: --style=k&r --brackets=break --indent=spaces --indent-cases --indent-preprocessor --pad-header --pad-oper --unpad-paren --keep-one-line-statements --keep-one-line-blocks --convert-tabs $(ItemFileName)$(ItemExt) 初始目录: $(ItemDir) CodeBlocks 设置差不多,很多绿色版的已经设置好了 AStyle_2.02_windows.zip bin 目录里有官方编译好的 Artistic Style 2.01 Maintained by: Jim Pattee Original Author: Tal Davidson Usage : astyle [options] Source1.cpp Source2.cpp [...] astyle [options] Beautified When indenting a specific file, the resulting indented file RETAINS the original file-name. The original pre-indented file is renamed, with a suffix of ".orig" added to the original filename. Wildcards (* and ?) may be used in the filename. A 'recursive' option can process directories recursively. By default, astyle is set up to indent C/C++/C#/Java files, with four spaces per indent, a maximal indentation of 40 spaces inside continuous statements, a minimum indentation of eight spaces inside conditional statements, and NO formatting options.
1.C:你难道指针扎得不疼么?每天收垃圾很舒服?键盘上P右边两个键是不是已经按坏了?   2.C++:学C++三年以内请不要说你会C++;学了三年以上的人,恭喜你们,你过去几年浪费的时间我可以拿着香飘飘环绕地球一圈了。   3.Java:不好意思,Java的面向对象对我来说是原子弹打原子。而且Java7才引进Lambda表达式实在是太晚了,即使java以后会跟python越来越像,至于支持真正的函数式编程?我希望下个末日之前可以实现。而且有时候我确实需要单行执行的解释器而Java并没有。   4.Ruby:Ruby很好,但是你为什么不直接说你只是为了用RoR?   5.Lisp:如果你用lisp,你平时肯定会用python或者perl写脚本。而且你会Lisp不去拯救世界还来看这篇文章干什么?!抽象语法树什么的最讨厌了。..。   6.Perl:我第一次看Perl的代码就感觉像用脚写的。”为什么满屏的正则表达式?“!   7.C#,php,javascript:呵呵。   8.Shell:这算语言么?   9.Matlab:第一,我穷酸学生没钱每年买你的正版,看到激活码就想吐。第二,我不想心血来潮画两个心形函数的时候用1mb的窄带花两天下个5.03Gb的文件在我128Gb的固态硬盘里装,然后用完两个小时就删,如此循环。第三,我会python了不想再花时间学你的sb语法,熟悉你的.m文件。第四,所有对windows的垄断的血泪控诉都直接对mathwork转过来吧~什么对开源,对自由,对的打击信仰~绝对适用~第五,python大部分时候如果不比你好用至少跟你一样好用,而这只是它不到10%的功能,几个程序员业余时间写出来的库。真心请matlab你这个没事发邮件“培训一个星期2000刀打折700刀”的大公司滚粗。

7,540

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 VC.NET
社区管理员
  • VC.NET社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧