2015-06-23 43 views

回答

8

例如在C中,您不能获取用register说明符声明的对象的地址。

void foo(void) 
{ 
    register int a = 42; 
    &a; // constraint violation 
} 

另一个例子,你不能在文件范围内声明中使用register

register int b = 42; // constraint violation 

int main(void) 
{ 
} 
+0

换句话说,虽然MSVC++消除了'register'的任何运行时的缺点,你仍然有编译时的限制。 (不,没有好处)。 – MSalters

相关问题