Resultados da pesquisa a pedido "stl"

15 a resposta

Limpando uma lista STL / vetor de ponteiros

Qual é a parte mais curta do C ++ que você pode criar para limpar com segurança um vetor ou lista de ponteiros? (supondo que você precise chamar delete nos ponteiros?) list<Foo*> foo_list;Prefiro não usar o Boost ou envolver meus ponteiros ...

3 a resposta

Encaminhar declarar um contêiner STL?

É possível encaminhar declarar um contêiner STL em um arquivo de cabeçalho? Por exemplo, pegue o seguinte código: #include <vector> class Foo { private: std::vector<int> container_; ... };Eu quero ser capaz de fazer algo assim: namespace std { ...

3 a resposta

Quais contêineres / algoritmos STL eu poderia usar para resolver isso?

Eu tenho um projeto MFC que, dado um caminho raiz inicial, percorre todos os arquivos, pastas e subpastas e, subsequentemente, exibe cada arquivo para o usuário em um Controle de Lista. Como isso pode facilmente se tornar uma operação bastante ...

8 a resposta

Existe uma maneira de iterar no máximo N elementos usando o loop for baseado em intervalo?

Gostaria de saber se existe uma boa maneira de iterar no máximo N elementos em um contêiner usando o intervalo baseado em loop e / ou algoritmos da biblioteca padrão (esse é o ponto principal, eu sei que posso usar apenas o " "loop for com uma ...

7 a resposta

Armazenando em cache o iterador final - Boa ou má ideia?

De um modo geral, é uma boa idéia armazenar em cache um iterador final (especificamente contêineres STL) para fins de eficiência e velocidade? como no seguinte pedaço de código: std::vector<int> vint; const std::vector<int>::const_iterator end = ...

9 a resposta

std :: auto_ptr ou boost :: shared_ptr para o idioma pImpl?

Ao usar oidioma do pImpl [http://en.wikipedia.org/wiki/Pimpl_idiom]é preferível usar umboost:shared_ptr em vez de umstd::auto_ptr? Tenho certeza que li uma vez que a versão boost é mais amigável para exceções? class Foo { public: Foo(); private: ...

1 a resposta

Qual é a diferença entre cbegin e begin para vector?

O membroinício [http://www.cplusplus.com/reference/vector/vector/begin/]tem duas sobrecargas, uma delas éconst_iterator begin() const;. Há também ocbegin [http://www.cplusplus.com/reference/vector/vector/cbegin/] const_iterator cbegin() const ...

1 a resposta

Por que o auxiliar std :: tuple retorna a referência rvalue em vez de value

Se você olhar paraget, a função auxiliar parastd::tuple, você notará a seguinte sobrecarga: template< std::size_t I, class... Types > constexpr std::tuple_element_t<I, tuple<Types...> >&& get( tuple<Types...>&& t );Em outras palavras, ele ...

2 a resposta

Impedir o acesso direto às chaves std :: map

Eu gostaria de embrulhar umstd::map portanto, o cliente não sabe que estou armazenando suas chaves inteiras positivas, na verdade, como números inteiros negativos. Eu preciso permitir a iteração sobre a classe e acessar os elementos. Eu pensei ...

3 a resposta

Removendo elementos de um mapa C ++ por meio de um loop for

Meu STL está um pouco enferrujado, então me perdoe por fazer uma pergunta possivelmente trivial. Considere o seguinte pedaço de código: map<int,int> m; ... for (auto itr = m.begin(); itr != m.end(); ++itr) { if (itr->second == 0) { m.erase(itr); ...