C++ で一時変数が const 参照された時の破棄されるタイミングを実験する ― 2020年03月13日 07時21分34秒
折角なので、今回は実際に一時変数が破棄されるタイミングを観察する。
実行すると、main 関数が END を出力した後に ~Int が呼ばれているのが分かる。
#include <iostream>
class Int
{
int value_;
public:
Int( int value ): value_( value ){}
~Int()
{
std::cout << "~Int(" << value_ << ")" << std::endl;
}
};
int main()
{
const Int& i = Int( 3 );
std::cout << "END" << std::endl;
}
% c++ -std=c++98 const_refernece.cpp
% ./a.out
END
~Int(3)
前回。
最近のコメント