.NET技术-Other-待解决的疑问
MFC:
1)#pragma warning (push)
#pragma warning (disable : 4273)
2) [
ClassInterfaceAttribute(ClassInterfaceType::AutoDual)
,GuidAttribute("D66B262E-CFF3-4d26-9FE3-4A3DF3EDFEF3")
]
public ref class B: public A
{}
3)extern "C"
4)MFC133:
其?的 AFX_PMSG 定義為函式指標:
typedef void (CCmdTarget::*AFX_PMSG)(void);
(AFX_MSGMAP_ENTRY*) &(theClass::_messageEntries)
5)在MFC中为什么函数可以光声明,不定义
6)MFC141:为什么不和其他的宏放一块。
#0082 typedef void (CCmdTarget::*AFX_PMSG)(void);
#0083
#0084 struct AFX_MSGMAP_ENTRY // MFC 4.0
#0085 {
#0086 UINT nMessage; // windows message
#0087 UINT nCode; // control code or WM_NOTIFY code
#0088 UINT nID; // control ID (or 0 for windows messages)
#0089 UINT nLastID; // used for entries specifying a range of control id's
#0090 UINT nSig; // signature type (action) or pointer to message #
#0091 AFX_PMSG pfn; // routine to call (or special value)
#0092 };
7)MFC142:有什么用
#0143 typedef void (CWnd::*AFX_PMSGW)(void);
#0144 // like 'AFX_PMSG' but for CWnd derived classes only
8)MFC149:有什么用
BOOL CFrameWnd::OnCommand(WPARAM wParam, LPARAM lParam)
{
cout << "CFrameWnd::OnCommand()" << endl;
// ...
// route as normal command
return CWnd::OnCommand(wParam, lParam);
}
BOOL CWnd::OnCommand(WPARAM wParam, LPARAM lParam)
{
cout << "CWnd::OnCommand()" << endl;
// ...
return OnCmdMsg(0, 0);
}