【发布时间】:2013-06-30 09:20:07
【问题描述】:
看完上面的文章,我还是不太确定宏是一个函数还是其他什么。宏等于函数吗?
例子:
// Create a Direct3D 9 device.
hr = direct3D9->CreateDevice(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, g_hWnd, D3DCREATE_SOFTWARE_VERTEXPROCESSING, &d3dPP, &d3dDevice);
// Cout out the message to indicate the failure.
if(FAILED(hr))
return 0;
【问题讨论】:
-
我想如果我没记错的话,宏可能有也可能没有参数,但所有函数都有。并且宏不会将任何内容返回给调用者,而函数必须选择或不返回。
-
我使用 cout
-
是的,我的意思是,你也可以有
std::cout<<__DO_SOMETHING__ <<std::endl;。 -
@hagubear 你的两个定义都是完全错误的。函数和类似函数的宏都可以接受零个或多个参数。宏在技术上不会返回值,因为它们不是函数,但它们仍然可以产生值。
标签: c++ winapi direct3d directx-9 direct3d9