我正在使用 DirectX 11 并尝试使用 XMLoadFloat4 在范围内本地加载变量。我做了很多工作,而且名称很长,所以我不想创建一堆局部变量,但是使用如下代码:
XMStoreFloat4(&vertices[0].normal, XMVector3Cross(
XMLoadFloat4(&(vertices[2].position - vertices[0].position)),
XMLoadFloat4(&(vertices[0].position - vertices[1].position))
));
Run Code Online (Sandbox Code Playgroud)
我收到了 C2102。您知道像这样在适当的地方创建参考的优雅方法吗?
是否可以定义一个宏,它的参数没有用括号括起来?我想简化我的 ECS 系统,以便用户可以创建组件类,而无需手动编码模板继承内容。
所以宏可能看起来像下面的代码,但我不希望它有括号:
#define ECSComponent(ClassName) struct ClassName : public Component<ClassName>
ECSComponent MyComponent {
//members
}
Run Code Online (Sandbox Code Playgroud)