flutter 如何获取扩展Struct(ffi)的泛型参数的大小?

nfeuvbwi  于 2023-03-24  发布在  Flutter
关注(0)|答案(1)|浏览(119)

我是一个 dart 初学者,我最近遇到这个问题,这里是代码:

class Test<T extends Struct> {
  int sizeOfT() {
     return sizeOf<T>();
  }
}

我得到了这个错误:
The type arguments to 'sizeOf' must be known at compile time, so they can't be type parameters.
我发现Dart中的泛型是动态的(类型是在运行时确定的)。我认为这是根本原因,但我如何才能使它正确呢?
我看了Dart中关于Struct类的文档,仍然不能解决我的问题

dwbf0jvd

dwbf0jvd1#

尝试使用这个代码,我希望它能帮助你.

import 'dart:ffi';

class Test<T extends Struct> {
  int sizeOfT() {
    return sizeOfTstruct<T>();
  }

  static int sizeOfTstruct<T extends Struct>() {
    return sizeOf<T>();
  }
}

相关问题