C++で関数の引数リスト内で一時オブジェクトを生成した時のデストラクタが呼び出されるタイミング
次のようなコードを実行したとき、printf()の引数リストで生成したstd::stringのデストラクタが呼び出されるのはprintfの実行が終わってから、ということでよかったでしょうか?
適当なclassを実装して試せばそのコンパイラでの動作は確かめられますが、規格で定義されているのかが気になりました。
int main(int argc, char *argv[])
{
printf("%s %s\n", std::string("A").c_str(), std::string("B").c_str());
return 0;
}