次のように宣言された一連のコマンド ライン オプションを C 関数に転送し、D メインが引数を取るとします。
extern (C) void init(int argc, char** argv);
void main(string[] args) {
init(args.length, map!(toStringz)(args));
}
最初のパラメーターは簡単ですがtoStringz
、args
配列に適用しようとしてもうまくいきません。私は得るcannot implicitly convert expression (map(args)) of type MapResult!(toStringz,string[]) to char**
。どのように変換string[]
しますchar**
か (またはconst(char)**
)。