0
点赞
收藏
分享

微信扫一扫

对临时变量的引用


以下代码来自《Imperfect C++》


#include  
  < 
  stdio.h 
  > 
  

 
  int 
   main()
 
  ... 
  {
    long l = 2222;
    short const &s = l;

    l = 0;
    printf("%ld, %d ", l, s);
    return 0;
}


输出是0, 2222还是0, 0?


按C++标准,引用s所指向的不是l,而是一个临时变量,所以输出应该是0, 2222。

举报

相关推荐

0 条评论