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)
前回。
コメント
トラックバック
このエントリのトラックバックURL: http://uyota.asablo.jp/blog/2020/03/13/9223721/tb
※なお、送られたトラックバックはブログの管理者が確認するまで公開されません。
コメントをどうぞ
※メールアドレスとURLの入力は必須ではありません。 入力されたメールアドレスは記事に反映されず、ブログの管理者のみが参照できます。
※なお、送られたコメントはブログの管理者が確認するまで公開されません。