1

我已经使用 boostshared_ptr头文件编写了一个程序。如何编译这个程序?-l我在编译时使用 g++ 选项提到了什么库。

4

1 回答 1

6

指定包含boost包含头文件的目录的目录。例如:

  • 升压安装:

    /home/user/boost_1_53_0/boost/shared_ptr.hpp

  • 包括:

    #include <boost/shared_ptr.hpp>
    
  • 编译(注意-I,不是-l):

    g++ -I /home/user/boost_1_53_0 main.cpp -o main

请注意,不需要动态链接boost::shared_ptr模板也是如此,并且在头文件中完全定义。

如果您的编译器支持 C++11,请std::shared_ptr<>改用(如 Roee 所述):

  • 包括:

    #include <memory> // use std::shared_ptr<T>
    
  • 编译:

    g++ -std=c++11 main.cpp -o main

于 2013-06-03T08:39:37.990 回答