小编Ber*_*yTD的帖子

如何在QuantumSimulator Run()命令中将C#数组传递到Q#操作中?

我正在制作一个程序,该程序使用C#脚本中作为参数接收的整数数组,Driver.cs但是它给出以下错误:

Error CS1503 Argument 2: cannot convert from 'long[]' to 'Microsoft.Quantum.Simulation.Core.IQArray<long>'

我试图改为传入一个字符串数组并在程序内转换它们,但是出现了相同的错误:

Error CS1503 Argument 2: cannot convert from 'string[]' to 'Microsoft.Quantum.Simulation.Core.IQArray<string>'

这是C#代码Driver.cs- keyArray是我要传递给Q#的数组。

using (var qsim = new QuantumSimulator())
{
    var result = QMain.Run(qsim, keyArray).Result;
    var (res0, res1, res2) = result;
    System.Console.WriteLine(res0 + ", " + res1 + ", " + res2);
}
Run Code Online (Sandbox Code Playgroud)

Q#QMain操作在Operations.qs

operation QMain(keyCode : Int[]) : (Result, Result, Result)
Run Code Online (Sandbox Code Playgroud)

在Q#中,Int数据类型对应于C#long

传递字符串数组也失败,具有以下签名QMain

operation QMain(s …
Run Code Online (Sandbox Code Playgroud)

c# quantum-computing q#

3
推荐指数
1
解决办法
102
查看次数

标签 统计

c# ×1

q# ×1

quantum-computing ×1