跳到主要内容

ffi_native_unexpected_number_of_parameters

Native 注解的参数数量意外。期望 {0} 个,但实际有 {1} 个。

描述

#

当用作 @Native 注解的类型参数的函数类型中的参数数量与被注解函数中的参数数量不匹配时,分析器会产生此诊断。

示例

#

以下代码会产生此诊断,因为用作 @Native 注解的类型参数的函数类型 (Void Function(Double)) 有一个参数,而被注解的函数 (void f(double, double)) 的类型有两个参数

dart
import 'dart:ffi';

@Native<Void Function(Double)>(symbol: 'f')
external void f(double x, double y);

常见修复

#

如果被注解函数是正确的,则更新 @Native 注解中的函数类型以匹配

dart
import 'dart:ffi';

@Native<Void Function(Double, Double)>(symbol: 'f')
external void f(double x, double y);

如果 @Native 注解中的函数类型是正确的,则更新被注解函数以匹配

dart
import 'dart:ffi';

@Native<Void Function(Double)>(symbol: 'f')
external void f(double x);