ev-duckdb-designated-init-engine-002¶
| 字段 | 值 |
|---|---|
| 项目 | duckdb/duckdb |
| 固定 commit | 069cc9f9b5be |
| 路径 | extension/delta/src/delta_utils.cpp |
| 行段 | L174-L176 |
| 特性 | 指定初始化(designated initializers) |
| 许可证 | MIT |
| 代码来源 | 项目源码 |
| 级别 | manual |
| 审核 | zyuhao7 @ 2026-10-26 |
| 测试代码 | 否 |
| 发现方式 | regex |
用法¶
在构造函数初始化列表中用指定初始化构造基类聚合
为什么典型¶
C 接口的回调结构体字段很多;指定初始化只填需要的两个函数指针,避免按位置猜测字段顺序。
摘录¶
PredicateVisitor::PredicateVisitor(const vector<string> &column_names, optional_ptr<TableFilterSet> filters)
: EnginePredicate {.predicate = this,
.visitor = (uintptr_t(*)(void *, ffi::KernelExpressionVisitorState *)) & VisitPredicate} {
备注¶
生产路径;Delta 扩展中构造 C 回调聚合。