- 浏览: 223944 次
- 性别:
- 来自: 杭州
文章分类
- 全部博客 (163)
- c++ (30)
- JavaScript (30)
- java (61)
- jQuery (3)
- ACE (2)
- oracle (9)
- jni (0)
- android (2)
- shell (1)
- myeclipse (1)
- Hibernate (1)
- linux (2)
- sqlserver (2)
- windows (2)
- sql (2)
- php (2)
- css (1)
- 学习 (1)
- ExtJs (1)
- RSS (1)
- 报文 (1)
- 跟我学Spring3 (6)
- dos (1)
- server (1)
- nosql (4)
- mongodb (6)
- photoshop (1)
- WebService (2)
- 股票 (1)
- OpenGL (3)
- Spring3MVC (6)
- 生活 (1)
- struts2 (1)
- 云盘 (1)
- blog (1)
- nosql nodejs mongoose (1)
最新评论
-
sblig:
配置分片: mongo -port 27017config ...
搭建Mongodb集群:分片Sharding+副本集Replica Set -
sblig:
配置路由:mongs: 40000 40100 40200sc ...
搭建Mongodb集群:分片Sharding+副本集Replica Set -
fuanyu:
哥们,干得漂亮。。
struts2 高危漏洞修复 -
sblig:
配置列子如下
<?xml version="1 ...
跟我学Spring3 学习笔记一 -
sblig:
307622798 写道博主你好,最近在看你的js系列文章,发 ...
JavaScript 学习笔记 二 对象的访问
1. timer.hpp
timer接口简单,轻巧好用 不适合高精度,跨度大的 如以天,月,年为跨度时间单位 可以使用 date_time
计时用的是标准头文件 <ctime>里的 std::clock()函数 精度依赖操作系统或编译器 难以跨平台
2. progress_timer.hpp 继承 timer
省去 elapsed(),用于自动计时 小工具
progress_timer t;//声明对象就开始计时 自动在作用域结束释放,并自动输出计时时间
题外话1:
java
int j=0;
for(int i=0;i<1000;i++){
j = j++;
}//最终 j 还是等于 0
c++
int j=0;
for(int i=0;i<1000;i++){
j = j++;
}//最终 j 等于 1000
题外话2:
oracle 函数应用 截取字符串 hello 截取掉 h
除了用 substr ,还可以用 trim ;
select trim('h' from 'hello') from dual; ello
SELECT LTRIM('WWhhhhhaT is tHis w W','Wh') FROM DUAL; aT is tHis w W
SELECT RTRIM('WWhhhhhaT is tHis w W','W w') FROM DUAL; WWhhhhhaT is tHis
参考 http://guanhuaing.iteye.com/blog/1498792
3. 扩展 progress_timer
progress_timer 使用方便,但是精度才小数点后两位,有些应用不能满足
可以直接修改 progress_timer.hpp std::streamsize old_prec = m_os.precision( 2 );//2 就是精度
本着开一闭原则,没有预留发挥空间。 模板技术仿造 progress_timer 新类
new_progress_timer.hpp
#include <boost/progress.hpp>
#include <boost/static_assert.hpp> //使用模板参数实现 progress_timer template<int N = 2> class new_progress_timer : public boost::timer { public: //初始化 输出流 m_os ,并用 static_assert 静态断言 保证 N取值 0和10之间 new_progress_timer(std::ostream & os=std::cout):m_os(os){ BOOST_STATIC_ASSERT(N>=0 && N<=10);//静态断言 } ~new_progress_timer(void){ try{ //保存流的状态 std::istream::fmtflags old_flages = m_os.setf(std::istream::fixed,std::istream::floatfield); std::streamsize old_prec = m_os.precision(N); //输出时间 m_os<<elapsed()<<" s\n"<<std::endl; //恢复流状态 m_os.flags(old_flages); m_os.precision(old_prec); }catch(...){} } private: std::ostream & m_os; }; //使用模板特化,精度为2的直接继承自progress_timer template<> class new_progress_timer<2>:public boost::progress_timer{};
#include <stdio.h> #include <boost/timer.hpp> #include <boost/progress.hpp> #include "new_progress_timer.hpp" using namespace boost; int main() { //1. timer timer t; printf("%f h\n",t.elapsed_max()/3600); printf("%f s\n",t.elapsed_min()); printf("%f s\n",t.elapsed()); printf("\n"); //2. progress_timer 继承 timer progress_timer pt; int j=0; for(int i=0;i<1000;i++){ j = j++; } printf("%d \n",j); //3. 扩展progress_timer 精度为10位 new_progress_timer<10> nt; for(int i=0;i<10000000;i++){ j = j++; } printf("%d \n",j); }
发表评论
-
OpenGL 图形编程 学习笔记 三
2013-01-04 13:54 1843[2012-12-31 16:53] openGL笔记 ... -
OpenGL 图形编程 学习笔记 二
2013-01-04 13:48 1226[2012-12-31 16:38] OpenGL ... -
OpenGL 图形编程 学习笔记 一
2013-01-04 13:45 1131[2012-12-31 16:15] OpenGL学习笔 ... -
“工业级” 断言
2012-09-06 12:30 991class Assert { public: A ... -
算法学习 之遍历
2012-05-22 14:22 1098/********************广度优先遍历算 ... -
算法学习 之链表
2012-05-22 13:52 1005/**********开放定址哈希表的存储结构***** ... -
算法学习 之查询
2012-05-22 11:45 900/******************顺序查找***** ... -
算法学习 之排序
2012-05-07 11:42 928/***********直接插入排序********** ... -
日常开发有用标签 五
2012-04-11 10:42 902linux cmd Mr__zh ... -
日常开发有用标签 四
2012-04-11 10:38 778java I/O 深入分析 Java ... -
日常开发有用标签 三
2012-04-11 10:37 911java thread java并发编程- ... -
日常开发有用标签 二
2012-04-11 10:35 693java 100个Java经典例子(41- ... -
日常开发有用标签 一
2012-04-11 10:31 930工具 Linux 常用C函数(中文版) ... -
C++ Primer 笔记七
2012-03-27 16:15 894每个类都定义了一个接口和一个实现。接口由使用该类的代码需要执行 ... -
C++ Primer 笔记六
2012-03-07 14:38 842typedef 通常被用于以下三种目的: 1.为了隐藏特定类型 ... -
C++ Primer 笔记五 引用(const)1
2012-02-24 17:50 1261定义 const 对象常量在定义后就不能被修改,所以定义时必须 ... -
C++ Primer 笔记四
2012-02-22 15:38 10341.内置类型变量是否自动初始化取决于变量定义的位置。在函数体外 ... -
C++ Primer 笔记三
2012-02-22 12:53 869初始化变量定义指定了变量的类型和标识符,也可以为对象提供初始值 ... -
C++ Primer 笔记二
2012-02-16 16:09 932/* * main.cpp * Created on ... -
C++ Primer 笔记一
2012-02-16 16:08 920/* * main.cpp * Created on ...
相关推荐
《Boost学习笔记》.pdf
在【标题】和【描述】中提到的“Boost模板元编程学习笔记(二)”主要围绕两个主题展开:数值计算和类型计算。 1. 数值计算 在提供的代码示例中,`binary`模板展示了如何使用模板元编程实现将十进制数转换为二进制...
Boost 是一个广泛使用的 C++ 库,由 C++ 标准库的开发者参与编写,旨在增强 C++ 的功能和实用性。Boost 提供了一系列跨平台的工具和库,适用于 Linux 和 Windows 系统。学习 Boost 对于提升 C++ 开发者的技能和效率...
7. **Boost库学习指南**:这是一份详细的Boost库学习教程,涵盖了多个子库的用法。 8. **boost-thread**:Boost线程库是C++11之前实现线程操作的重要工具,提供了线程同步、互斥量等功能。 9. **智能指针的标准之争 ...
Boost库是C++编程语言中的一个开源库集合,它提供了大量的高效、高质量的库,用于扩展C++的标准库。在给定的“boost学习资料下载”中,特别提到了两个关键点:`boost graph`库以及`boost中文说明`。 首先,让我们...
**BOOST入门笔记** Boost库是C++编程语言的一个开源库,它提供了许多高效、高质量的工具,以增强C++的功能性和可移植性。Boost库包含了众多模块,如nocopyable、singleton、asio、filesystem、bind、thread和future...
**CRM模式BOOST拓扑结构实现PFC的知识点详解** 功率因数校正(PFC,Power Factor Correction)技术是电力电子领域中一个重要的概念,它旨在提高交流电源系统的...希望这些学习笔记能帮助读者深入理解和应用PFC技术。
Boost库是C++编程语言中的一个开源库集合,它提供了大量的高效、跨平台的库,以扩展C++的标准库功能。这些库涵盖了算法、数据结构、模板元编程、并发、图形算法、数学函数等多个领域,极大地提升了C++的实用性和灵活...
第一本书“Beyond the C++ Standard Library”旨在帮助读者理解Boost库如何超越C++标准库的界限,提供更高级、更强大的工具。它涵盖了Boost库的主要组件,包括Boost.Asio(网络编程)、Boost.Filesystem(文件系统...
### 开关电源BUCK BOOST参考笔记 #### 一、引言 在电子设备的设计与制造过程中,开关电源作为能量转换的核心部件,对于整个系统的稳定性和效率具有决定性的影响。其中,BUCK(降压)和BOOST(升压)两种基本类型的...
Boost学习系列 Boost 库是 C++ 标准库的补充库,它提供了许多现代化的库,使得 C++ 开发更加高效和强大。Boost 库是开源的,遵循 Boost Software License,它允许任何人自由地使用、修改和分发。Boost 库是平台独立...
AWR1443boost 用户指南笔记 1 AWR1443boost 是一款用于评估 AWR1443 单芯片毫米波传感器的评估板。该板载天线、基于 XDS110 的 JTAG、用于 FFT 和 CFAR 的硬件加速器等特性,旨在帮助开发者快速开始开发毫米波雷达...
Boostnote是一款基于Electron Js构建的开源笔记应用程序,专为开发者和极客设计。它集成了Markdown语法,方便用户创建、编辑和管理技术文档。Electron Js是一个由GitHub开发的跨平台框架,允许使用JavaScript、HTML...
An+Introduction+to+Boost.chm Beyond+the+C+++Standard+Library(中文版...Boost And STL学习资料 .chm boost graph library.pdf Boost程序库完全开发指南.pdf Boost学习指南.pdf 智能指针的标准之争 Boost_vs_Loki.pdf
从描述中提到的“boost开发指南第三版”,我们可以推断,这本书是专门用来指导开发者如何使用Boost库的,并且是深入的内容,覆盖了Boost库的各个模块和组件。 Boost库的开发指南书籍通常会包含以下几个知识点: 1....
1. "Boost+库+学习指南+.pdf"可能是一本详细介绍Boost库用法的指南,涵盖了各个库的使用方法和示例。 2. "C.Plus.Plus.Standard.Library.A.Tutorial.and.Reference.chm"是C++标准库的教程和参考手册,对STL的各个...