Let's assume I have a class with only one constructor:
class T {
public:
T(BigClass&& big) : big(std::move(big)) {}
...
SomeBigClass
};
In most places the constructor is called on temporaries but in one place I need to make an explicit copy of BigClass because it is not a temporary and will be used multiple times in a loop:
void foo(const BigClass& big) {
while (...) {
T t(std::make_a_copy(big));
...
}
}
Is there any function "dual" to std::move
in C++11 or C++14 that would replace make_a_copy above ?
Edit: Some clarifications.
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…