boost 学习笔记 10:设计模式

设计模式是一个面向对象的通用解决方案,是一套被反复使用,多数人知晓的代码设计经验总结。 一般分为:创建型模式、机构型模式和行为模式 创建型模型 抽象工厂 Abstract Factory 提供统一的创建接口。 生成器 Builder 将复杂对象的构建与表示分离,使得同样的构建过程可以创建不同的表示。 工厂方法 定义接口用于创建对象。 原型 Prototype 原型模式使用类的实例通过拷贝的方式创建对象,具体的拷贝行为可以定制。最常见的用法为类实现一个 clone() 成员函数,这个函数创建一个与原型相同或者相似的新对象。 单件 Singl Read more ...

2016-01-18 boost , C++

国家博物院一日游

说了很久想去国家博物院,只是迟迟没有动脚,终于熬到今天。本不是旅游旺季,早上9点出门到那边依然能够领到票进去,排队人数也不是很多,几乎就是去了拿票直接进。如果想要预约门票的话,提早电话或者网上预定,可参见官网文章。 去的时候没有查攻略,也没有看任何文章,进到博物馆才发现那边这么大,一时间竟然不知道从那边逛起,幸而查了一眼马蜂窝,看到有人建议到地下一层从《古代中国》开始看。于是开始一段非常漫长的游览史,不是知道是因为走得太慢还是看的太认真,当走到“三国魏晋南北朝”开始已经开始寻找座位想要快速结束这段旅程了。而此后一遍又一遍的感慨中国历史太长,沉浸其中容易 Read more ...


boost 学习笔记 9:并发编程

Boost中有两个用于并发编程的组件。首先是thead库:它为C++增加了可移植的线程处理能力。然后是一个用于同步和异步IO操作的功能强大的库——asio,它使用了前摄器模式,可以处理串口,网络通信,而且有望成为C++标准底层通信库。 互斥量是一种用于线程同步的手段,它可以在线程编程中防止多个线程同时操作共享资源(或称临界区)。一旦一个线程锁定了互斥量,那么其他线程必须等待他解锁互斥量才能在访问共享资源。thead提供了7中互斥量类型(实际只有五种): mutex 独占式互斥量 try-mutex mutex 同义词 timed_mut Read more ...

2016-01-16 boost , C++

boost 学习笔记 10:Python

项目中需要将C++的程序暴露给网络使用,我也不想使用C++来用网络编程,就想到可以使用Python来解决Web端,然后将 C++ 的接口暴露给 Python 。于是在寻求解决方案的时候找到了 boost.python 库。 boost 中的 Python 库支持在 Python 和 C++ 之间的自由转换,包括 C++ 到 Python 的类型转换,默认参数,关键字参数,引用,指针等等。boost.python 库可以让 Python 轻易地调用 C++ 编写的模块,也可以很容易地在 C++ 中调用 Python 。 使用 C++ 文件中需要包含头 Read more ...

2016-01-16 boost , C++

删除社交账号状态

这两天陆陆续续通过一些插件脚本删除了一些社交网站数据。年轻的时候发过一些无聊的状态,然后很久以后都没有登陆过的一些账号,倒不如关了的好,自此以后墙外只用 Google+ , 还有 Blog 记录一下所思所想,墙内公开内容除了豆瓣可能也没得发了,不愿生活在一个审查的制度下。虽然我可能也不会发什么敏感的内容,可谁知道什么敏感,什么不敏感呢? facebook Delete all facebook posts , 可以利用以下插件删除 Facebook 所有状态,包括账号内的头像等等。 Chrome Extension link https://ch Read more ...

2016-01-15 经验总结 , social , posts

间谍之桥 感悟

间谍之桥 Bridge of Spies 2015 影评 一名伟大的律师,成就一件伟大的人质交换。剧情7分,表演8分,娱乐7分。汤姆汉克斯的演技自然没得说,不过俄国人质的更加深入人心,虽然并不知道他的名字,但之后就再不会忘记他的名字 —- Mark Rylance 。而电影在娱乐性方面给人更多的是思考,沉浸在那段历史中,思考的是那段历史中人们做过的每一个决策。 原本以为这部影片是讲述“间谍”之间的故事,看到开场辩护时就知道被标题所骗。联系到最近的快播案,两国在司法上可谓天上地下。从1957年的《十二怒汉》开始,到这部《间谍之桥》50多年间好莱坞从未放 Read more ...

2016-01-13 movie , 思考感悟 , american , action

每天学习一个命令:su 切换身份或者使用 superuser

su 用来切换身份或者升级成使用 superuser。如果没有加任何参数,则 su 默认变为 superuser。 参数格式     su [options] [username] su 命令用来改变当前登录 session 的用户身份。直接使用 su 默认成为 superuser,使用参数 su - 短横线,则完全切换成该用户登录的状态,连同环境变量一同切换,工作目录也会切换。 -c 指令 或 --command= 指令 :执行完指定的指令后,即恢复原来的身份;  -f 或——fast:适用于 csh 与 tsch,使 shell 不用去读取 Read more ...

2016-01-12 linux , command , su , superuser

boost 学习笔记 8:算法

对应书中第8章 算法,这一章作者介绍的很简单,只是举例使用 foreach , minmax ,其他算法都略去了。 foreach 将C++的语法扩充,使用 foreach 循环变量。 需包含头文件 #include <boost/foreach_hpp> 具体用法: #include <iostream> #include <string> #include <boost/assign.hpp> #include <boost/typeof/typeof.hpp> #include Read more ...

2016-01-12 boost , C++

boost 学习笔记 7:property_tree

上一篇文章boost容器中留下一个property_tree 没有学,觉得既然 boost 提供了 property_tree 这样好的工具来给C++ 解析xml和Json,必须要留有一定的篇幅来讲它。 原先项目中使用到JSON,需要使用C++解析一段返回值, JSON 格式如下: { "ret": "101", "error": [ { "errortype": "A0001", "errorstroke": { "0": "0.2", "1": "0.3" } Read more ...

2016-01-11 boost , C++

每天学习一个命令:apt 安装卸载软件

APT 是 Advanced Packaging Tools 的缩写,是 Debian 及其派生的发行版(使用最广泛的 Ubuntu/Linux Mint 等等)的软件包管理器。 APT 可以自动下载、配置和安装二进制或源代码格式软件包,简化了 Unix 系统上管理软件的过程。 APT 最早被设计成 dpkg 的前端,用来处理 deb 格式的软件包。 APT 主要由以下几个命令组成: apt-get apt-cache apt-file APT 能够自动处理软件的依赖问题,大大简化了工作流程 这里主要讲 apt-get 的常见用法 Read more ...

2016-01-11 apt , linux , command , ubuntu

最近文章

  • AI 浏览器 Comet 初体验 前两天刚介绍完 Dia 浏览器,就听说了 Dia 浏览器的母公司 The Browser Company 被 Atlanssian 以 6.1 亿美元现金收购,而另外一边,Google 的反垄断案也告一段落,不需要拆分 Chrome 和 Android,这边,Perplexity 就推出了以 Perplexity AI 为核心的网页浏览器 Comet。
  • 清理 macOS 上的一些低频使用的应用 之前的几台 MacBook Pro 都是因为钱包有限,所以只购买了 512GB 的空间。虽然也是够用的,但是如果安装的应用比较多的情况下,就会发现存储总是告警的情况。所以想着安装了 CleanMyMac 应用之后,就打开了它的 Uninstaller 功能,然后把我之前所有安装的应用列表都列出来,清理一下其中不是非常高频使用但是却又能解决特定需求的应用。
  • JetBrain AI Agent Junie 使用体验 今天更新了一下 JetBrains IntelliJ IDEA 和 PyCharm,在更新日志中发现 JetBrains 新增了 Junie 代码助手的功能,就顺手安装了,虽然我一直在用 JetBrains AI Assistant,但 AI Assistant 更像是一个常驻 IDEA 侧边栏的代码问答,虽然可以辅助生成代码,但是更偏重代码的自动提示,回答用户的问题,对错误进行解释,以及相关的文档工作,更像是一个更偏向代码的 AI 聊天伴侣(Companion)。但是 Junie 则更像是一个全智能的 Coding Agent,适合用来处理更大规模的,支持多个步骤,可以独立完成编码任务的 AI Agent,功能上更偏向于 Claude Code,Gemini CLI 这样完全自助完成任务的智能体。
  • 突破 Claude Code 5小时限制:利用 GitHub Copilot 代理 Claude Code 请求 如果大家高频使用 Claude Code 进行代码对话和生成工作的话, 经常会遇到 5 小时的限制。 幸运的是,如果你已经订阅了 GitHub Copilot,现在有一个巧妙的解决方案:通过本地代理将 GitHub Copilot 的 Claude Sonnet 4 模型转换为 Anthropic API 格式,从而绕过 Claude Code 的使用限制,继续享受顶级的 AI 编程体验。
  • Claude Code 利用 ccusage 统计使用情况 在之前的视频和文章当中,我也经常提到 Cloud Code 5 小时的限制,那么我们在进行开发的时候,监控模型的消耗和使用成本是至关重要的。所以今天我想为大家介绍一款专为 Claude Code 设计的消耗统计工具——CC Usage。 它能帮助开发者掌控对 Claude Code token 消耗的使用情况,避免意外超出配额。

赞助