struct A { this(int[] data) @safe { a = data; } int[] a; } void main() @safe { int[3] test = [1, 2, 3]; A a = A(test); }
应该给data参数加上return scope.或让构造器为模板参数来推导,否则,构造器可以把栈分配切片赋值给全局变量.
data
return scope
模板参数
栈分配
京公网安备 11010502049817号