小编hsg*_*ltb的帖子

使用boost :: shared_ptr <std :: list <T >>初始化boost :: shared_ptr <std :: vector <T >>

我想boost::shared_ptr<std::vector<std::string> > vec用构造函数初始化列表初始化一个boost::shared_ptr<std::list<std::string> > list

可能吗?

我试过这个:

Test.hpp

class Test
{
public:
    Test(boost::shared_ptr<std::list<std::string> > list);

private:
    boost::shared_ptr<std::vector<std::string> > vec;
};
Run Code Online (Sandbox Code Playgroud)

TEST.CPP

Test::Test(boost::shared_ptr<std::list<std::string> > list) : vec(list->begin(), list->end())
{
}
Run Code Online (Sandbox Code Playgroud)

部分错误消息:

Test.cpp: In constructor ‘Test::Test(boost::shared_ptr<std::list<std::basic_string<char> > >)’:
Test.cpp:6:85: error: no matching function for call to ‘boost::shared_ptr<std::vector<std::basic_string<char> > >::shared_ptr(std::list<std::basic_string<char> >::iterator, std::list<std::basic_string<char> >::iterator)’
Run Code Online (Sandbox Code Playgroud)

c++ boost

5
推荐指数
1
解决办法
473
查看次数

如何使用仅包含一个元素的列表列出包含元素的列表?

我有一个包含n个元素的列表,但我想将其转换为包含n列表的列表,并且每个列表都包含一个元素.

 a = ['1','2','3','4']
 b = [['1'],['2'],['3'],['4']]
Run Code Online (Sandbox Code Playgroud)

我如何从a到b?

python

3
推荐指数
1
解决办法
51
查看次数

标签 统计

boost ×1

c++ ×1

python ×1