Files
XCEngine/docs/api/XCEngine/Scripting/IScriptRuntime/TryGetClassFieldDefaultValues.md

41 lines
1.1 KiB
Markdown
Raw Normal View History

2026-04-02 22:23:29 +08:00
# IScriptRuntime::TryGetClassFieldDefaultValues
**命名空间**: `XCEngine::Scripting`
**类型**: `method`
**头文件**: `XCEngine/Scripting/IScriptRuntime.h`
## 签名
```cpp
virtual bool TryGetClassFieldDefaultValues(
const std::string& assemblyName,
const std::string& namespaceName,
const std::string& className,
std::vector<ScriptFieldDefaultValue>& outFields) const = 0;
```
## 作用
查询某个脚本类在初始状态下的字段默认值。
## 设计意义
这个接口不是简单返回“每种类型的零值”。当前 `ScriptEngine` 用它来:
- 构建 `ScriptFieldModel``defaultValue`
-`ClearScriptFieldOverrides()` 时把活体托管字段重置回类默认值
因此更合理的实现应该尽量反映托管类构造后的真实字段状态。
## 返回值语义
- 返回 `true`:后端确认类存在,并成功返回默认值列表。
- 返回 `false`:类不存在、后端未初始化,或后端不支持默认值提取。
## 相关文档
- [TryGetClassFieldMetadata](TryGetClassFieldMetadata.md)
- [ScriptEngine::TryGetScriptFieldModel](../ScriptEngine/TryGetScriptFieldModel.md)