飞纯技术
  • 主页
  • 相册
  • 关于我
KEEP IN TOUCH

Posts in category C/C++

复习C++

十05
2007
Leave a Comment Written by Filia.Tao

很久不写C++代码了, 最近复习数据结构, 算法.顺便重新写点代码, 把C++的基础找回来, 也实践一下Effective C++中的一些条款.
写了一个二叉搜索树的模板类. 把C++的一些基本知识都用上了, 比如类,模板,重载,引用,指针等等.

一些思考

  • 模板, 除了STL , 实际的程序中有模板到底使用情况如何?
  • 命名风格
  • 注释. C++ 有比较流行的文档注释方式吗?
  • Effective STL 条款21: 尽可能使用const . 这一条我是体会深刻啊.
  • 使用Graphviz 进行可视化还是不错的. 不过有时候还是不够灵活.

下面是代码, 其实里面有很多可以/需要说的地方….
READ MORE »

Tagged C++

how to write lex (9)

四20
2007
4 Comments Written by Filia.Tao

我今天把代码优化到处理c语言,用2秒钟.(原来需要10s).
不过还是没法更flex 比,它的时间<1s.
随便写写开发过程中的几点体会,可能和lex本身没有太大的关系.

  • 尽量不要用string . C++ 的string做的效率不高.
  • 不要使用magic number . 可以定义称const int 的就定义成const int.
  • 宏是万恶之源.如果一定要用,名字取长一点.
  • 用好typedef
  • 单元测试很重要.
  • 学会用工具分析性能.
  • 正则表达式很奇妙
  • 中文的编码是负的.
Posted in compiler, lex - Tagged compiler, lex

C++用的好不爽

四17
2007
3 Comments Written by Filia.Tao

用惯了python ,php 等语言,现在觉的C++用起来很多地方很不爽.今天写的很郁闷.

  • 没有方便的定义多行字符串的方法
  • 我要一个读取文件内容到一个字符串中的方法, 可就是找不到. (如果你知道,请一定告诉我)
  • 没有方便的dump 方法. (我要把一个数组转换成合法的C/C++代码的数组定义.)

当然我知道这很多并不是C++的错. 纯粹发发牢骚.

关于 C++ iterator

四08
2007
Leave a Comment Written by Filia.Tao

这几天在写编译原理的课程设计。
第一部分就是实现一个SEU-lex.
花了将近一个礼拜的时间,基本把核心算法(RE->DFA->DFA->min DFA)给搞定了.
C++ 好久不用,有点生疏了,遇到了很多问题.
等把程序完全写完了,再好好整理整理一下.
今天先说刚遇到的一个关于iterator问题.

我用一个iterator 访问一个vector, 同时有往vector里面加入新的元素.
但iterator迭代到新加入的元素是会出现错误.(类似空指针)
看来有空还要好好看看STL的书,把这些个概念搞清楚.

Posted in compiler - Tagged C++, compiler, iterator, lex, STL, vector

授权方式

Creative Commons License
本站作品采用
知识共享署名-非商业性使用-相同方式共享 3.0 许可协议
进行许可。

最近评论

  • carlos 发表在《yacc,ast and graphviz》
  • xiang 发表在《关于我》
  • healthy green tea 发表在《debian 同步系统时间》
  • Filia.Tao 发表在《Kinper – A Kindle Helper Service》
  • pensz 发表在《厦门行简单记录》

My Tweets

RSS My KnowHowSpot

标签

指令 汇编 算法 计算机科学 2008 amazon android ast boto C++ C/C++ compiler Computer design-pattern DFA Django ezengage Firefox github google GSoc http imagedownload iterator javascript jquery kindle kinper lex life Linux locationbar Mix opensource proxy python s3 S5Creator shanghai slide STL vector vista web Web开发

分类

  • ideas (2)
  • job (2)
  • life (2)
  • notes (1)
  • opensource (38)
    • Firefox (17)
    • GSoc (7)
    • Linux (13)
  • project (3)
  • 生活 (3)
  • 编程开发 (67)
    • C/C++ (4)
    • GAE (1)
    • http (2)
    • javascript (24)
    • python (20)
    • Web开发 (12)
    • 端口映射工具的实现 (6)
  • 计算机科学 (23)
    • compiler (17)
      • lex (11)
    • 算法 (5)
  • 随便写写 (67)

文章归档

Blogroll

  • 11′s SKY
  • 86's world
  • Filia’s Summer Of Code
  • limodou的学习记录
  • Loki
  • MyAllBlue
  • perol’s blog
  • Realazy
  • 一个藏袍
  • 人猿星球
  • 冰古Blog
  • 刀枪Blue
  • 懶懶喵日記
  • 桑林志
  • 白菜
  • 车东[Blog^2]
  • 释翼的天空
  • 阿文的自留地

开源网站

  • beagle
  • linuxsir
  • sourceforge
  • 中国Linux 公社
  • 啄木鸟社区

我的项目

  • ezEngage
  • KnowHowSpot

EvoLve theme by Theme4Press  •  Powered by WordPress 飞纯技术