在模块内创建dup函数 - 与数组

时间:2016-09-20 20:31:00

标签: d

如果我在D程序中创建dup函数,我将无法再使用数组的dup属性。此代码有效

import std.stdio;

void main() {
  double[] v = [0.1, 0.2, 0.3];
  writeln(v.dup);
}

但是这段代码返回" clash.d(9):错误:函数clash.dup(double x)不能使用参数类型调用(double [])"

import std.stdio;

double dup(double x) {
  return x;
}

void main() {
  double[] v = [0.1, 0.2, 0.3];
  writeln(v.dup);
}

如何在程序中定义dup函数而不丢失数组的dup属性?

1 个答案:

答案 0 :(得分:5)

alias进入本地重载集:

alias dup = object.dup;

位于您自己的dup函数定义下方。