Resultados da pesquisa a pedido "rvalue-reference"

1 a resposta

Por que o `std :: stringstream :: stringstream (std :: string &&)` não existe?

eu estava esperandostringstream tem um construtor que rouba seu conteúdo inicial de umstring&&. Tais interespécies "movem construtores" geralmente não existem no STL? Se não, por que não?

1 a resposta

Por que o C ++ não move referências de rvalue de construção por padrão? [duplicado

Esta pergunta já tem uma resposta aqui: Referência de valor é tratada como um valor L [/questions/28483250/rvalue-reference-is-treated-as-an-lvalue] 4 respostas construtor de referência @value é chamado em vez do construtor de ...

1 a resposta

Um membro de dados de um objeto temporário é um xvalue no C ++ 11?

#include <vector> using namespace std; struct A { vector<int> coll; }; void f(const vector<int>&){} void f(vector<int>&&){} int main() { f(A().coll); // Is "A().coll" an xvalue? }O C ++ 11 garantef(A().coll) chamarávoid f(vector<int>&&)?

2 a resposta

Não é possível vincular lvalue à referência rvalue

Eu tenho esse trecho de código de teste C ++, #include <vector> class A { std::vector<int> x; public: A(std::vector<int>&& _x) : x(_x) {} }; class B { A a; public: B(std::vector<int>&& _x) : a(/*move(*/_x/*)*/) {} };Eu estou passando_x para B ...

4 a resposta

vite o crescimento exponencial de referências const e referências de rvalue no construtor

Estou codificando algumas classes de modelo para uma biblioteca de aprendizado de máquina e estou enfrentando esse problema muitas vezes. Estou usando principalmente o padrão de política, em que as classes recebem como argumento políticas de ...

1 a resposta

inicialização inválida de referência não const a partir de um rvalue

Então, eu tenho a seguinte função: void scan(std::istream& is, Handler& h);Quero chamá-lo de maneiras diferentes, como: scan(std::cin, Handler()); scan(std::ifstream("myfile"), myhandler);O compilador reclama sobrestd::ifstream("myfile") ...

3 a resposta

Posso usar a referência rvalue para temporário? É um comportamento indefinido ou não?

Atualizando a perguntaPor que esses exemplos de duas referências de rvalue têm comportamento diferente? [https://stackoverflow.com/questions/35315472/why-this-two-rvalue-references-examples-have-different-behavior] : Código fonte: int a = 0; ...

3 a resposta

Por que as variáveis de referência rvalues não são rvalue?

Digamos que eu tenha duas sobrecargas de uma funçãof. f(T&&) ef(T&). Então no corpo deg: g(T&& t) { f(t);} a sobrecargaf(T&) será chamado porque t é considerado um valor l. Isso é muito surpreendente para mim. Como uma função com ...

1 a resposta

Chamada ambígua com função de referência de valor r sobrecarregada

Eu tenho uma classe com as seguintes declarações: class IcoSphere { [...] private: int _addVertex(const glm::vec3 &p); int addVertex(glm::vec3 p); int addVertex(const glm::vec3 &&p); [...] };Então, eu estou chamando 'addVertex' assim: IcoSphere ...

4 a resposta

Referência Rvalue é tratada como um Lvalue?

Eu postei esta resposta:https://stackoverflow.com/a/28459180/2642059 [https://stackoverflow.com/a/28459180/2642059]Que contém o seguinte código: void foo(string&& bar){ string* temp = &bar; cout << *temp << " @:" << temp << endl; }Ébar um rvalue ...