C++ 如何从MFC应用程序调用函数的Win32 API版本?

C++ 如何从MFC应用程序调用函数的Win32 API版本?,c++,winapi,mfc,C++,Winapi,Mfc,具体来说,我使用alloconsole()创建了一个控制台。现在我想把那个窗户移走 首先,我想调用GetWindowRect来获取它的宽度和高度。但如果我只是在中键入它,它将调用CWnd中的实现。我需要调用接受HWND作为第一个参数的函数 如何执行此操作?在调用函数名称时,使用名称空间运算符scope resolution运算符作为函数名称的前缀。这将阻止CWnd成员函数成为匹配项 void MyWindow::foo() { HWND wnd; // = ... CRect r

具体来说,我使用
alloconsole()
创建了一个控制台。现在我想把那个窗户移走

首先,我想调用
GetWindowRect
来获取它的宽度和高度。但如果我只是在中键入它,它将调用
CWnd
中的实现。我需要调用接受
HWND
作为第一个参数的函数


如何执行此操作?

在调用函数名称时,使用名称空间运算符scope resolution运算符作为函数名称的前缀。这将阻止CWnd成员函数成为匹配项

void MyWindow::foo()
{
    HWND wnd; // = ...
    CRect rect;
    ::GetWindowRect(wnd, &rect);
}

我在这里做假设,但是
::GetWindowRect
。您要找的术语是“范围解析运算符”,尤其是一元运算符。@chris谢谢。已更新。将
correct
的地址传递给需要
LPRECT
的Windows API函数时,不要获取该地址。改用
运算符LPRECT()
,即
::GetWindowRect(wnd,rect)@IInspectable为什么?我看不出有什么好处。传递
&rect
假定
的特定实现是正确的,可以随时更改。使用提供的转换运算符不依赖于特定的二进制布局。