突然想到了,引用的大小是多少。按照原先的理解因为引用是别名嘛,应该和引用指向的那个变量一致吧。
但是今天在实验的时候发现却不是这样的。
#include <thread> #include <iostream> #include <stdio.h> #include <vector> class A { }; A a; class Test { A& t1 = a; A& t2 = t1; }; int main() { std::cout << sizeof(Test) << std::endl;//在class 里面,引用竟然和指针的大小一致 std::cout << sizeof(A) << std::endl; double d; double& d1 = d; std::cout << sizeof(d1) << std::endl;//2. 直接sizeof引用,得到size是所指向的变量 return 0; }
结果:
8 1 8