第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

CLion之C++框架篇-優(yōu)化框架,引入boost(三)

標(biāo)簽:
Java C++

背景

 

  结合上一篇CLion之C++框架篇-优化框架,单元测试(二),继续进行框架优化!这一版优化引入一个我们日常经常使用的操作库Boost,估算使用频率在70%以上!

 

  Boost的优势在哪里?

  1、Boost是一个功能强大、构造精巧、跨平台、开源并且完全免费的C++程序库,有着“C++‘准’标准库”的美誉。

  2、它由C++标准委员会部分成员所设立的Boost社区开发并维护;

  3、使用了许多现代C++编程技术,内容涵盖字符串处理、正则表达式、容器与数据结构、并发编程、函数式编程、泛型编程、设计模式实现等许多领域,极大地丰富了C++的功能和表现力,能够使C++软件开发更加简洁、优雅、灵活和高效。 

  4、代码开源,你可以直接看到底层代码实现,为我们学习c++提供参考标准!

 

 

boost能做什么?

  

  时间与日期

  内存管理

  字符串与文本处理

  正确性与测试

  容器与数据结构

  算法

  数学与数字

  操作系统相关

  函数与回调

  并发编程

  编程语言支持

 

 

下载安装Boost库

 

 

  下载地址:https://dl.bintray.com/boostorg/release/1.67.0/source/boost_1_67_0.tar.gz

  

  

?

123cd boost_1_67_0./bootstrap.sh./b2  install

 

  

    我的机器安装了10分钟左右(时间有点长,耐心等待)

  头文件位于:/usr/local/include/boost

  库路径位于:/usr/local/lib

 

  看看都安装了哪些库

?

1234567891011121314151617181920212223242526272829303132./bjam --show-librariesThe following libraries require building:    - atomic    - chrono    - container    - context    - contract    - coroutine    - date_time    - exception    - fiber    - filesystem    - graph    - graph_parallel    - iostreams    - locale    - log    - math    - mpi    - program_options    - python    - random    - regex    - serialization    - signals    - stacktrace    - system    - test    - thread    - timer    - type_erasure    - wave

  

 

 

在框架中使用boost

 

 

 boost版本跟cmake版本是有直接关系的

 

编辑顶层的CMakeLists.txt,如图:

 

https://img1.sycdn.imooc.com//5b17cad60001e01d13480482.jpg

 

 https://img1.sycdn.imooc.com//5b17cae60001722314160298.jpg

 

直接在test下的代码里引用执行:

 

 https://img1.sycdn.imooc.com//5b17cb04000193ad16441602.jpg

 

case——时间与日期

 

背景:C++一直以来缺少对时间和日期的处理能力,而时间与日期又是现实生活中经常遇到的,C++程序员不得不求助于C,使用笨拙的结构和函数(struct tm,time())。Boost使用timer和date_time库完美地解决了这个问题。

 

timer库:是一个很小的库,提供简易的度量时间和进度显示功能,用于性能测试等需要计时的任务。主要包括三个组建:计时器类timer、progress_time和进度指示类progress_display。

 

数据进度

 

 https://img1.sycdn.imooc.com//5b17cb1b00012d1c09800500.jpg

https://img1.sycdn.imooc.com//5b17cb2600015db009840318.jpg

 

 获取今天、昨天、明天

 

https://img1.sycdn.imooc.com//5b17cb420001b69b18621352.jpg

 

 

 

更多样例:http://boost.ez2learn.com/doc/html/date_time/examples.html 

 

## 错误boost::gregorian::greg_month::get_month_map_ptr()"

解决方式:在CMakeLists.txt里添加 set(CMAKE_CXX_FLAGS   "-lboost_date_time-mt-d");

 

git版本管理项目

 

 

日常操作中,隐藏掉那些不需要的目录及文件,方便进行git的文件管理

 

https://img1.sycdn.imooc.com//5b17cb570001985216121098.jpg

 

https://img1.sycdn.imooc.com//5b17cb8d00011d6616941550.jpg

 

https://img1.sycdn.imooc.com//5b17cb9c0001fb3a14881422.jpg

原文出处

點(diǎn)擊查看更多內(nèi)容
TA 點(diǎn)贊

若覺(jué)得本文不錯(cuò),就分享一下吧!

評(píng)論

作者其他優(yōu)質(zhì)文章

正在加載中
  • 推薦
  • 評(píng)論
  • 收藏
  • 共同學(xué)習(xí),寫(xiě)下你的評(píng)論
感謝您的支持,我會(huì)繼續(xù)努力的~
掃碼打賞,你說(shuō)多少就多少
贊賞金額會(huì)直接到老師賬戶(hù)
支付方式
打開(kāi)微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊(cè)有機(jī)會(huì)得

100積分直接送

付費(fèi)專(zhuān)欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會(huì)
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)

舉報(bào)

0/150
提交
取消