65,186
社区成员




就下面简单的代码来表明我的疑惑
class Base
{
};
class Sample:public Base
{
};
使用时
Sample test;
Base thunk=static_cast<Base>(test); //1
Base thunk=static_cast<Base&>(test);//2
上面的1、2处转型有什么实质上的不同。最好能举例说明,这是在看别人源码时发现的
一时半会没想明白
int a=1;
short b;
int b1=static_cast<short>(a);
int b2=static_cast<short&>(a);