罗朝辉(飘飘白云)

关注嵌入式操作系统,移动平台,图形开发。-->加微博 ^_^

  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  85 随笔 :: 0 文章 :: 169 评论 :: 0 Trackbacks
@白云不再飘

从你用的网名与匿名状态可以看出你带着一定的偏见或情绪。

就我所在项目组做的东西上面说的很明白:

“先来说说我们在做什么样的事情。我们在开发一个开源嵌入式终端操作系统,具体实现方式是用 C++ 改写 Android 的 framework,让这个系统同时支持 C++应用,Android 原生应用以及 Web 应用。虽然这个系统也是基于 Android,但与国内那些仅客制化 UI 的系统(如小米,锤子等)不同,我们做法改动更加彻底:完完全全的C++系统。据我所知,目前有两家公司在做类似的事情:阿里云OS据说是改写 Dalvik 而保留 framework(和我们没相反,我们是保留 Dalvik 而改写 framework),另一个是 HTC,HTC 的做法与我们非常相似。“

是否是如”做的东西纯粹就是抄袭,还抄不出点水准“,看官自有判断。

公司的其他产品,如私有云盘,智能硬件等,据我所知,不知道所谓的抄袭从何而来。
@春秋十二月

工作一两年的话 10k并不算低,再说有个起字嘛,我们并不是说工作多年都是10k 的标准,起码要对得起行业水平,具体多少要看自身水准了。
@Marvin
哈哈,本就是从C++起家的~~
re: D3D中的texture应用示例 罗朝辉 2012-12-20 23:01
@sgf

文中就有写 代码:点此下载 啊!
C++ 也是一样的,自己给自己赋值时要特别小心。
@3tgame

多谢提醒,已经修改了。
@华夏之火

那些仅是语法形式的考究?那您自娱自乐吧
这个实现还有一些值得考究的地方。比如:

1,如下可以编译通过么?
TShared_Ptr<int> pInt;
if (!pInt) {
}

if(pInt == 0) {
}

2,TShared_Ptr<int> 与 int * 的可置换性考虑没?
void normalize(int * pt);
TShared_Ptr<int> pInt;
normalize(pInt); //可否?

3,考虑了赋值构造操作符没?

4,智能指针若不能直接从原生指针构造,那还算智能么?
int a = 0;
TShared_Ptr<int> pInt = new TShared_Ptr<int>(&a);

@zhaoyg

这里重点是说类型转换,而不是内存布局。
江大=江南大学?
@tony508
用来同步的。
@marvin
谢谢~~
@marvin

多谢鼓励,一起加油~
re: [iOS]在 iOS 平台上编译 DCMTK 罗朝辉 2011-12-28 12:24
@路人

3.6.1 我没有试验过。。。
re: 【树】树算法之 B 树 罗朝辉 2011-12-13 20:55
@peter
存储到磁盘上的方法有多种,可以写入文件,数据库,序列化等,至于序列化的具体实现要看具体语言/库的支持,或自己实现了
re: Scrum 学习笔记 罗朝辉 2011-12-13 20:49
@marvin
你 q 多少,可以加我 89157335
re: Scrum 学习笔记 罗朝辉 2011-12-09 13:40
@marvin
不是,哈哈~~
re: [iOS]在 iOS 平台上编译 DCMTK 罗朝辉 2011-11-22 20:23
@路人

你确认你删除了步骤 9 中所有的非 lib 的 dependencies?
re: GitHub使用简介 罗朝辉 2011-11-14 12:55
git 的进阶知识可以参考 ProGit 中文文档:https://github.com/progit/progit/tree/master/zh
re: [Cocoa]Obj-C 类方法简介 罗朝辉 2011-11-01 20:37
@无名
你说的是 block,block 不是类方法吧
re: [Mac]在 Mac 上开发 .Net 应用 罗朝辉 2011-10-15 22:56
@饭中淹
现在应该好很多了,至少在 Mac 下完全正常~~
@呃

诚然,我是笔误了,将 overriding(重载) 写成 overwrting(重写,覆盖),但是没有将它们搞混:
override 一般是子类重写(覆盖)父类的方法,以实现与父类不同的行为;
overload 是重载,一般是用于在一个类里面实现若干同名但参数形式不同的重载方法,

我明白你的境地,C, C++, Obj-C 三种相比,C 无疑是最简洁,运行效率最高的;C++ 无疑是最复杂也很强大的;Obj-C 最优雅的,没有C++ 的复杂难以掌握,但也足够简洁高效,最重要的是易学易用。

都说学 C/C++ 的必有三个境界,C入门,唯C++,回归 C。但是在这后不妨再去了解了解其他的语言,Obj-C或动态语言。jjHou 总结过 C++ 就像是个熔炉,包括四种编程范式在里面。至于你说的模版并非仅仅是一直自动代码生成机制,它是完备的范型编程范式。

我不想在这里比较语言的优劣,也不想详谈 C++的大而全,复杂易误用等。C++ 以打补丁的形式增加了很多语法糖,无论是它的过去还是现在都说不上优雅。语言只是一种工具而已,在同样的应用环境下,哪一种语言能被更快,更容易地掌握,应用,推广,能让编程者所想即可所用,就足以证明它是优雅的。

你不妨去了解一下 Obj-C,讨论也需要有些背景知识的。

@Genius

原文中的测试地址可能已经不能用了,你是用自己的测试网站么?参数传递正确么?有没有 encode 参数?
@wu

这两个是相同的,以下两个是不同的,原文中举例不当,已经修改过来了。

-(int)foo:(int) bar bar1:(int)bar;
-(char*)foo:(int) bar bar2:(int)bar;
re: 【树】树算法之 B 树 罗朝辉 2011-03-23 16:06
@望见

在 B 树的实际应用中,每个节点存储的关键字一般都较大(1千 ~ 几千不等),所以一般只存储 root 节点,以减少内存消耗,然后在需要的时候再从磁盘中读取或写入相应的节点,进行下一步操作。这里所说的从磁盘读取或写入就是从磁盘文件中读取或写入,一般都是从数据库文件中。
re: OpenGL中FBO的概念及其应用 罗朝辉 2010-08-26 09:16
文章有两段文字重复了好几遍哈。。。。
re: 字符串转换 罗朝辉 2009-10-15 18:45
@过路人

这个对英文字母是可行的,但对中文日文等字符不可行~~
re: 忍不住要写几句 罗朝辉 2009-09-01 09:59
不错的体验嘛~~

ps:心情日志可以别发首页么?
re: A* (路径搜索)算法导引 罗朝辉 2009-08-13 16:11
这文章讲得的确不错的。。
我好像在哪里看到过全篇的译文~~
@狼狗

我猜是为了保持 static 语义的一致性吧,就如 val 一样:

void foo()
{
static int val = 0;
val++;

}
re: 定制任务栏托盘的 dll 罗朝辉 2009-06-09 09:02
@Pear

思路是这样的,用单独的线程处理代理过程。
@矩阵操作

谢谢提醒,已经更正过了了。好像Cpp博客对中文文件名支持不太稳定,已经改成英文文件名了。
下载链接:http://www.cppblog.com/Files/kesalin/Cplusplus0x_in_VC10.zip
re: 定制任务栏托盘的 dll 罗朝辉 2009-06-08 23:51
@xiao si le

阻塞模式的写两个函数就搞定,是没什么好说的;非阻塞模式的你要是有好办法不妨赐教。犯不着在这里满地找牙了
re: 我的初次尝试 罗朝辉 2009-06-08 10:56
也可以用

int main()
{
system("pause");
return 0;
}
@狼狗

这是因为是 static 的缘故,static 变量在内存中始终都只有一份,它在这里相当于全局的,和非静态局部变量有着本质不同。