美文网首页
ALGLIB库 ( C++, VS2017 ) 配置教程

ALGLIB库 ( C++, VS2017 ) 配置教程

作者: 沉迷科研的憨憨 | 来源:发表于2019-11-02 20:32 被阅读0次

    一、ALGLIB简介

    ALGLIB是一个跨平台的数值分析和数据处理库。它支持多种编程语言(C ++,C#,Delphi)和多种操作系统(Windows和POSIX,包括Linux)。
    ALGLIB功能非常强大,其主要功能包括:

    • 数据分析(分类/回归,统计)
    • 优化和非线性求解器
    • 插值和线性/非线性最小二乘拟合
    • 线性代数(直接算法,EVD / SVD),直接和迭代线性求解器
    • 快速傅立叶变换和许多其他算法

    二、ALGLIB库下载

    本教程所使用的环境为Visual Studio 2017开发环境,其它版本的VS配置过程相似。首先我们进入ALGLIB官网(http://www.alglib.net/)进行下载,对于初学者建议选择ALGLIB免费版本进行下载。本教程选择的当前最新版本ALGLIB 3.15.0 for C++,将alglib-3.15.0.cpp.gpl下载至本地,并进行解压得到cpp文件夹。
    cpp文件夹中主要包括:

    • src:资源文件夹(里面包括了我们后面配置所需的.cpp文件与.h文件)
    • tests:测试代码Demo文件夹,用于测试ALGLIB第三方库是否添加成功
    • gpl2, gpl3:这是开源协议,不用管
    • manual.cpp:官方帮助文档,非常详细!!

    三、ALGLIB库配置及测试

    虽然在manual.cpp官方文档中对于ALGLIB库配置有相关说明,如下图所示


    ALGLIB配置官方说明

    但是我感觉还是文档描述的不是很清楚,有些地方还是需要注意一下,所有我记录一下(其实正如文档所说的,非常简单)。本教程将演示linalg线性代数算法包的配置(tests文件夹中也有相关的Demo),关键步骤如下:

    • 首先用VS2017创建一个控制台示例工程(注意:2017版本VS会默认使用pch.h预编译头,建议在项目属性中取消使用pch.h预编译头,否则会和第三方库代码中stdafx.h预编译头有冲突)。
    • 然后将我们所需功能对应的h.,cpp.文件加入到我们项目源文件中(注意:需要处理好各个包之间的依赖关系,都要拷贝进源文件夹添加到项目中,特别是stdafx.h,可别丢了),并且在VS的解决方案资源管理器中添加现有项。
    • 最后在主函数中,添加以下代码进行编译测试,若程序正常执行则已经完成了算法库的配置。
    #include "linalg.h"
    
    int main()
    {
        alglib::real_2d_array a("[[1]]");
        alglib::spdmatrixcholesky(a, 1, true);
        return 0;
    }
    

    根据自己的需求添加相应的ALGLIB算法库,ALGLIB算法库很强大,非常值得学习!
    大家在配置过程中有什么疑问,欢迎在下面留言,谢谢大家~

    相关文章

      网友评论

          本文标题:ALGLIB库 ( C++, VS2017 ) 配置教程

          本文链接:https://www.haomeiwen.com/subject/yhxtbctx.html