# RHIShader::IsValid ```cpp virtual bool IsValid() const = 0; ``` 检查着色器是否有效。 验证着色器是否已成功编译并可以用于渲染。应在调用 `Bind()` 之前使用此方法确保着色器可用。 **返回:** 着色器有效返回 `true`,无效返回 `false` **线程安全:** ✅(只读操作) **复杂度:** O(1) **示例:** ```cpp RHIShader* shader = device->CreateShader(); if (shader->CompileFromFile(L"shaders/pixel.cso", "PSMain", "ps_5_0")) { if (shader->IsValid()) { shader->Bind(); // 渲染... shader->Unbind(); } else { printf("Shader is not valid!\n"); } } shader->Shutdown(); ``` ## 相关文档 - [RHIShader](shader.md) - 返回类总览 - [`Bind`](bind.md) - 绑定着色器