Poco库的学习

Posted htj10

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Poco库的学习相关的知识,希望对你有一定的参考价值。

一、下载和编译Poco库

参考:www.jianshu.com/p/94c27101eee3
blog.csdn.net/walk_and_think/article/details/82432863

  • 下载地址:https://pocoproject.org/releases/poco-1.9.0/
  • 下载poco-1.9.0-all.zip,其中不带all的是基础版本,只包含基本的poco类库,带all的是全功能版本,包含sqlite,opensll等等。
  • 解压缩zip包后,得到文件。

编译

---- Windows平台下

1、用记事本或UltraEdit打开components文件,添加或删除指定的行即可配置编译哪些模块。不想要openssl和mysql, 删掉openssl和data/mysql即可
例如:
CppUnit
CppUnit/WinTestRunner
Foundation
Encodings
XML
JSON
Util
Net
Zip
=> 只编译基本模块

2、根据Visual Studio版本,在文件夹中直接双击build_vsxxx.cmd文件即可自动编译。
VS2008: build_vs90.cmd
VS2013: build_vs120.cmd
VS2015: build_vs140.cmd
VS2017: build_vs150.cmd

3、本人使用的VS2013因此,双击运行了文件夹中的build_vs120.cmd。之后会自动执行编译脚本,并在当前目录下生成两个文件夹bin和lib。
lib:该文件夹中存放了.lib静态连接库等文件。编译自己写的源代码时需要。
bin:该文件夹中存放了.dll动态链接库等文件。运行编译好的可执行文件时需要。

VS2013下使用Poco库

在Poco1.9.0目录下新建文件夹 include ,把所有的工程下的include的内容合在一起。
设置vs2013的项目属性》C/C++》附加包含目录:D:\poco-1.9.0-release\include (你自己的Poco目录\inlcude )
链接器》附加库目录》D:\poco-1.9.0-release\lib (你自己的Poco目录\lib )
调试》环境:PATH=D:\poco-1.9.0-release\bin;  (你自己的Poco目录\bin; )

 


以下参考官网文档和例子:https://pocoproject.org/slides/
 
#include <vector>
#include "Poco/String.h"
#include "Poco/Format.h"
using Poco::cat;
using Poco::format;
int main(int argc, char** argv)

    try
        std::vector<std::string> colors;
        colors.push_back("red");
        colors.push_back("green");
        colors.push_back("blue");
        std::string str;
        str = cat(std::string(", "), colors.begin(), colors.end());
        // "red, green, blue"

        int n = 42;
        std::string s;
        format(s, "The answer to life, the universe and everything is %d", n);
        s = format("%d + %d = %d", 2, 2, 4); // "2 + 2 = 4"
        s = format("%4d", 42);               // "  42"
        s = format("%-4d", 42);              // "42  "
        format(s, "%d", std::string("foo")); // "[ERRFMT]"
    
    catch (Poco::Exception& e)
    
        std::string s = e.what();
        s += " " + e.message();
    

    return 0;

 

以上是关于Poco库的学习的主要内容,如果未能解决你的问题,请参考以下文章

Linux 运行时链接器错误

带有现有存储库的 ASP.NET mvc 脚手架并将 POCO 映射到视图模型

PetaPoco源代码学习--1.使用的Attribute介绍

实体框架中的 POCO 是啥? [关闭]

POCO 生成工具

airtest图像识别+poco使用实践