CRect 到底是类还是对象 
为啥能直接能用?
不用再定义对象? 

比如:

CButton::Create 
BOOL Create( LPCTSTR lpszCaption, DWORD dwStyle, const 

RECT& rect, CWnd* pParentWnd, UINT nID );

参数const RECT& rect 

需要一个CRect对象 或者是rect结构体

定义一个CButton对象btn:

btn.Create( LPCTSTR lpszCaption, DWORD dwStyle, 

CRect( int l, int t, int r, int b ), CWnd* pParentWnd, UINT nID );

 

为什么可以直接写成这样?而不需要定义一个CRect的对象去调用?

 

百度以后的解释是:

 

CRect是MFC的一个类,它重载了所有与RECT,LPCRECT,LPRECT相关

的一些操作,所以在使用时可以不用考虑目的对象具体是

RECT/LPCRECT/LPRECT,因为CRect都会进行自动转换 !

 

基础太差!不是很明白!知道可以这么用,但是不知道为什么?

 
别再建议我去查msdn了,已经找过,没找到答案!