register関数の引数に指定子を適用するポイントは何ですか。次のコードは有効です。
#include <iostream>
using std::cout;
struct A
{
A(){ cout << "A\n"; }
~A(){ cout << "~A\n"; }
};
void foo(register A a)
{
}
int main()
{
cout << "first line\n";
foo(A());
cout << "last line\n";
}
register指定子が関数パラメータに適用されるのはなぜですか?