Как возвратить из метода шаблон

Тема в разделе "LANGS.C", создана пользователем _220, 9 май 2008.

  1. _220

    _220 New Member

    Публикаций:
    0
    Регистрация:
    23 мар 2006
    Сообщения:
    111
    У меня есть метод, он вызывается немало раз, получает информацию из файлов и складывает ее в list<somestruct>, так вот как мне этот список возвратить (чтобы потом все сложить в один список, или массив)? Не получается задать тип возвращаемого значения, компилятор ругается.
     
  2. katrus

    katrus New Member

    Публикаций:
    0
    Регистрация:
    7 мар 2007
    Сообщения:
    612
    Странно. У меня следующий код работает без проблем:
    Код (Text):
    1. struct SomeStruct
    2. {
    3.     int x;
    4. };
    5.  
    6. list<SomeStruct> test()
    7. {
    8.     list<SomeStruct> x;
    9.     return x;
    10. }
    Единственно - не стоит возвращать list таким образом. излишнее копирование ...
     
  3. JamesB

    JamesB New Member

    Публикаций:
    0
    Регистрация:
    3 фев 2008
    Сообщения:
    66
    Код (Text):
    1. std::list<SomeStruct> * function()
    2. {
    3. }
    и как он ругается?
     
  4. _DEN_

    _DEN_ DEN

    Публикаций:
    0
    Регистрация:
    8 окт 2003
    Сообщения:
    5.383
    Адрес:
    Йобастан
    Код (Text):
    1. boost::shared_ptr<std::list<SomeStruct> > function()
    2. {
    3. }
    4.  
    5. void function(std::list<SomeStruct>& list)
    6. {
    7. }
     
  5. _220

    _220 New Member

    Публикаций:
    0
    Регистрация:
    23 мар 2006
    Сообщения:
    111
    Функции получается делать, а методы нет.
    Я их наверное на так объявляю.

    Все все, разобрался.

    Буду возвращать указатель