C++实践之路
进击的部落
努力为将来奋斗着
展开
-
C++实践之路-----计算器(1)
计算器的设计需求说明 计算器主要功能是根据用户的输入,进行适当的计算。里面需要有内置函数、变量记录功能。功能、对象 根据需要,我们可以大致抽象出一些对象来:解析器:负责解析式子,目标是将输入的字符串转换成一个算术树,逆波兰序符号表:记录出现过的符号(符号包括:变量名、内置函数、内置常量)扫描器:从左往右的扫描缓冲器并将它们转换成记号存原创 2013-10-01 19:22:30 · 1949 阅读 · 0 评论 -
C++实践之路----容器的综合运用
阅读C++ Primer第十章需求:文本查询程序需要提供的功能:(1)提供查询功能,能够根据用户输入的单词,查询到所在的行(2)根据行号,返回对应行的文本(3)根据用户输入的文件名,读入文件 这是对外的的3个功能。然后现在抽象下名字Text_Query{ Setquery(word); Stringtext原创 2013-10-05 20:48:32 · 805 阅读 · 0 评论 -
Modern C++ design 第5章 Command 设计模式
Modern C++ design 第5章 Command 设计模式命令模式将发出命令的责任和执行命令的责任分离开来 Command模式两个特点接口分类;时间分离。Command保存了一个整装待发的处理请求,供将来运用。Command模式中,收集“某处理动作所需环境”的时刻和执行该动作的时刻并不相同。 可以将Command分为两类1.转发式命令forwardin原创 2013-10-24 20:49:48 · 1189 阅读 · 0 评论 -
对象生命周期管理
对象生命周期管理先定义什么叫线程安全:就是能够在多线程环境下使用,不需要通过额外的同步代码。对象构造的线程安全要保证对象的构造线程安全,我们需要做到在构造期间不将this指针泄露出去,因为在多线程环境下,有可能其他线程会使用到未构造完成的this指针。即使我们在构造函数的最后一行,也不应该将this指针传递给其他线程,因为c++中基类早于派生类进行构造,此时有可能还要进行派生类...原创 2018-05-24 16:38:18 · 1441 阅读 · 0 评论