西西河

主题:【原创】Chrome程序初探(序) -- 素里太守

共:💬73 🌺137
全看树展主题 · 分页首页 上页
/ 5
下页 末页
家园 捉虫得宝

恭喜:你意外获得【通宝】一枚

鲜花已经成功送出。

此次送花为【有效送花赞扬,涨乐善、声望】

家园 貌似官方提醒,win下用VS2005的务必要打SP1

似乎还要装for vista的SDK。。。

家园 原来铁老大还有这个心思啊???

我一直想说说LINUX的东西,但是不知道合适不合适...

不过...这样一来...光信息技术一个版面可能不够用吧...

家园 先贴出来再说

让大伙赶紧看看,学习一下。

家园 等下文。

经验用光了,回头来补花。

感觉河里不少IT高人,嘿嘿,大家都出来撒几篇,也够学的了。

家园 能否编译个2000下用的?

跑到狗狗那里没见有给2000用的Chrome

家园 谢谢 但不知从哪里下到原码。google时都打不开
家园 Chrome和Firefox,题外话

昨天把Mozilla的Firefox包也挡了下来,不为别的,就是做个在两个浏览器的代码结构和开发上做个小小的横向比较。比起Chrome来,FireFox整个小了一圈(400MB vs 30MB,也许还有其它的包,这只是俺目前的初步印象)。

从相关设计文档上Firefox比Chrome就差的不是一点点。GOOGLE到底是有米,比Mozilla这个松散组织做的好很多。

Firefox的“进入门槛”比Chrome可是高多了。俺的个人习惯是拿到一个产品从来不看说明书,先摆弄摆弄,遇见问题再翻说明书。Chrome的包展开后俺初看一下目录结构就开始用VS打开Solution文件开始Build.FireFox?俺现在连门朝什么地方开都不知道。那几个Bat 文件到可能是开门的钥匙。

不管如何,VS 和 C++ Builder是Windows上两个最主要的C++开发工具,Mozilla只要提供一个工具的开发文件(sln/vcproj或者grp/prj)就能够大大降低其入门门槛。可惜,没有?!

如果能在一个IDE环境中轻松编译,链接,调试一个软件产品。学习,分析这个产品就不是个难事情。代码就是最好的文档,DEBUG就是最好的老师。看不懂源码没有关系,设个断点,看看调用栈就齐了。

一个(软件)产品的普及推广过程中,第3方开发的介入是一个非常重要的因素。对程序员而言,最兴奋的莫过于自己编写(改动)的代码立即展现出效果。从这点上讲,俺看好Chorme而不是Firefox.

Chrome源码链接

家园 开放源码的都有这个毛病

很多开放源码项目都是在跨平台基础上的,主要的参与者往往都是在linux环境下工作,他们压根就没用到IDE。都是用最基本和最常见的编译工具,如批处理文件。

有一次我用开发源码的java项目,是一个更新的版本,看了一会发现压根就没有windows下的bat执行文件(原来是用的)。

家园 强烈支持啊

这样我在河里潜水还可以进步。。一举两得。

家园 为啥叫Chrome?

Mozilla的一个Extension而已?

家园 呵呵,FIREFOX的源码俺玩过~~

标准的GNU源码编译方式

./configure

make

make install

在windows上也一样(可能不需要make install).这是一种跨平台的方法.

不过有一点,这种默认的方法的配置选项不太好,你可以修改.mozconfig文件来配置编译选项.

chrome是怎么个样子我不知道,不过mozilla为了提供一个跨平台的应用程序框架,可是做了不少工作的.基于这个框架,开发了firefox,thunderbird等等一堆"鸟"玩意.

老兄要是对mozilla感兴趣,可以去http://developer.mozilla.org/看看.设计确实很精巧.而基于mozilla框架开发程序,也挺有意思,xul+javascript,简直就跟写HTML一样简单.

家园 不求最好,但求有料

比较同意楼下Kavin的想法,不必毕其功于一役,先写,而后逐步完善。

家园 这样不会数组访问越界么?

unsigned char textplusplus = ((i + 1) < max)?escaped_text[i + 2]:escaped_text[i + 1];

const std::string::value_type most_sig_digit(escaped_text[i + 1]);http://www.ccthere.com/article/1782263.html

const std::string::value_type least_sig_digit(textplusplus);

(i+1)<max, 如果i+2=max的话 escaped_text[i+2] 就会访问escaped_text[max]。这样的话是不是就访问了长度为n得数组的第n+1个元素?

是不是应该判断 (i+2)<max

:%崩溃的这个问题是因为 max_digit_index 是 size_t类型的,也就是unsigned, max<2的话 max_digit_index就under flow了

家园 【i+1】的问题。

在该循环中 i 永远小于MAX,因此i + 1最多等于MAX,这里MAX等于字符串长度。在这种字符串内存中,内存真实长度永远等于MAX + 1,最后一个字符后【MAX】= 0。因此访问 i + 1永远不会出现非法访问,访问 i + 2则“有可能”出现,具体情况取决于那块内存类型 --- 堆内存,栈内存?

全看树展主题 · 分页首页 上页
/ 5
下页 末页


有趣有益,互惠互利;开阔视野,博采众长。
虚拟的网络,真实的人。天南地北客,相逢皆朋友

Copyright © cchere 西西河