Resultados da pesquisa a pedido "stl"

1 a resposta

Encontre elementos de std :: set por comparação personalizada com valor de tipo diferente

Considere o seguinte exemplo de brinquedo de umstd::set com um comparador personalizado: #include <set> struct A { A() : a(cnt++) {} const int a; static int cnt; }; int A::cnt = 0; struct comp { bool operator()(const A& left, const A& right) ...

6 a resposta

Copiar std :: stack para um std :: vector

O código a seguir está garantido pelo padrão para funcionar (assumindo que st não está vazio)? #include <vector> #include <stack> int main() { extern std::stack<int, std::vector<int> > st; int* end = &st.top() + 1; int* begin = end - ...

5 a resposta

Operador de endereço duplo C ++? (&&)

Estou lendo o código fonte STL e não tenho ideia do que&& operador de endereço deve fazer. Aqui está um exemplo de código destl_vector.h: vector& operator=(vector&& __x) // <-- Note double ampersands here { // NB: DR 675. this->clear(); ...

5 a resposta

Problemas do compilador SFINAE

O meu código a seguir deve detectar seT tembegin eend métodos: template <typename T> struct is_container { template <typename U, typename U::const_iterator (U::*)() const, typename U::const_iterator (U::*)() const> struct sfinae {}; template ...

2 a resposta

O Valgrind mostra que os tempos de alocação std :: vector <> são mais que livres, mas não há vazamento de memória

O código é bastante simples: #include <vector> int main() { std::vector<int> v; }Então eu construo e corro com Valgrind: g++ test.cc && valgrind ./a.out ==8511== Memcheck, a memory error detector ==8511== Copyright (C) 2002-2013, and GNU GPL'd, ...

4 a resposta

convertendo uma matriz de const char * strings terminadas em nulo em um std :: vector <std :: string>

Eu tenho uma função C ++ do Visual Studio 2008 onde recebi uma matriz de seqüências terminadas em nuloconst char* e uma contagem do número de strings nessa matriz. Estou procurando uma maneira inteligente de transformar uma variedade ...

1 a resposta

uso inválido de tipo incompleto usando std :: future

Recebo o erro "uso inválido do tipo incompleto ..." quando tento compilar o código a seguir, mas não vejo meu erro. Eu já mudei a ordem das inclusões e dos modelos definidos. Mas o erro permanece. O que há de errado com os "futuros" no meu ...

12 a resposta

Não herdarás de std :: vector

Ok, isso é realmente difícil de confessar, mas eu tenho uma forte tentação no momento de herdarstd::vector. Preciso de cerca de 10 algoritmos personalizados para vetor e quero que eles sejam diretamente membros do vetor. Mas, naturalmente, eu ...

2 a resposta

Como negar uma função predicada usando o operador! em C ++?

Quero apagar todos os elementos que não atendem a um critério. Por exemplo: exclua todos os caracteres em uma sequência que não sejam dígitos. Minha solução usando boost :: is_digit funcionou bem. struct my_is_digit { bool operator()( char c ) ...

3 a resposta

Os contêineres da biblioteca padrão (STL) suportam uma forma de alocação de nothrow?

onew O operador (ou para PODs, malloc / calloc) suporta uma forma simples e eficiente de falha ao alocar grandes pedaços de memória. Digamos que temos o seguinte: const size_t sz = GetPotentiallyLargeBufferSize(); // 1M - 1000M T* p = ...