codepad
[
create a new paste
]
login
|
about
Language:
C
C++
D
Haskell
Lua
OCaml
PHP
Perl
Plain Text
Python
Ruby
Scheme
Tcl
struct A { A() { std::cout << "ctor\n"; } A(const A&) { std::cout << "copy-ctor\n"; } A(A&&) { std::cout << "move-ctor\n"; } A& operator=(const A&) { std::cout << "operator=\n"; return *this; } A& operator=(A&&) { std::cout << "move operator=\n"; return *this; } }; struct B { A a; }; int main(int argc, char* argv[]) { A a1; A a2 = std::move(a1); B b1; B b2 = std::move(b1); // Aのコピーコンストラクタが呼ばれる return 0; }
Private
[
?
]
Run code
Submit