锁定老帖子 主题:感觉C++的STL就是鸡肋啊
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (5)
|
|
---|---|
作者 | 正文 |
发表时间:2012-03-17
强强爱妍妍 写道 jinti 写道 强强爱妍妍 写道 给你一个char *的参数,然后你要传递给使用std::string类型的接口,这样不得不从char *转到string吧? char *允许NULL, 为啥std::string要抛个异常? 脑子都给异常吃了! CString就很好,它知道我们给它NULL的意思表示空字符串.
:) 在 C++中,为一个变量赋NULL,那代表这个变量是指针。 std::string val = "";或是 std::string val; 都可以。 你没看懂我的意思哇. 以你的例子说,val用一个char *类型的参数来初始化. 这时必须检查这个char *参数是否为NULL. void foo(char* bar) { //当bar是NULL的时候就悲剧了 std::string s = bar; ... } 所有使用指针的地方,必须先检查。这还要提醒! |
|
返回顶楼 | |
发表时间:2012-03-17
evanmeng 写道 Elminster 写道 自己实现一套 string 、链表和其他数据结构?在有 STL 的前提下这太蛋疼了 ⋯⋯
一點都不蛋疼,dll-export一個模板類風險太大了。 dll export末班类,你确信是好的做法吗? |
|
返回顶楼 | |
发表时间:2012-03-17
evanmeng 写道 Elminster 写道 自己实现一套 string 、链表和其他数据结构?在有 STL 的前提下这太蛋疼了 ⋯⋯
一點都不蛋疼,dll-export一個模板類風險太大了。 你确定你理解模板是怎么用的吗?模板类还要dll export, |
|
返回顶楼 | |
发表时间:2012-03-17
chunquedong 写道 STL也太简陋了,看看Java的String上有多少方法。
这个批评确实没有办法反驳! |
|
返回顶楼 | |
发表时间:2012-03-17
linrulong2005 写道 c++拥有不完善的面向对象思想 个人觉得 这玩意儿有一天会离我们远去
是不是把所有东西都弄成对象,类似与Java这样的,就叫完善了。就完美了? 世界本来就是多元的,试图用面向对象去解决所有的问题才是错误的思路,是一种美好的愿望,可惜世界不是那么简单的。 如果世界这么简单,我们就不会需要各种各样的数学了! |
|
返回顶楼 | |
发表时间:2012-03-17
night_stalker 写道 C++就老是怀疑C不好, 结果做出来更不好.
什么叫老是怀疑,是肯定的觉得C有不足。才要去改进,当然搞的国语复杂了一点,但是也确实有很多好的东西引入,这是不能否认的。 |
|
返回顶楼 | |
发表时间:2012-03-17
fanasy 写道 强强爱妍妍 写道 std::string s = NULL;
这tmd会抛异常,无形中增加了很多参数check的代码,气愤! 所以有人推荐用0不用null 这不是NULL和0的问题,是完全错误的问题,haha |
|
返回顶楼 | |
发表时间:2012-03-28
C++就是搞得太复杂了,偏特化的引入导致各种乱七八糟用法全来了。虽说C++功能强大,无所不能,但是得承认在很多场合,C++并非理想的选择。C++开发的项目产品化周期太长,这个语言迟早要被历史淘汰,只是目前还没有理想的替代语言罢了!
|
|
返回顶楼 | |