Q# 是微软的量子语言,很厉害,所以本文告诉大家如何入门,如何配置。

介绍

很多新的计数机技术都在很多年前就有人提出,量子计算就是其中一个。量子计算在 1980 年就被 Richard Feynman 和 Yuri Manin 提出,因为量子比较特殊,所以难以被人们的容易接受,而且因为计算机的价格比较高所以大家比较少可以测试和开发。现在微软弄了Q#和模拟器,大家可以开始学习如何使用量子计算,这是一个简单的语言,可以很多的使用 C# 的方式。不过还是有一些不同的地方,在使用之前,需要了解很多量子的东西。

下载环境

首先需要下载一些东西,打开Microsoft Quantum Development Kit - Visual Studio Marketplace下载扩展。扩展无法下载,请到我上传的csdn下载

需要确定自己的 VisualStudio 是 VisualStudio 2017

需要关闭所有的 VisualStudio 才可以安装,在安装完成之后,先 clone 一下微软的项目,这个项目可以测试是否可以使用。

项目的地址:Microsoft/Quantum: Microsoft Quantum Developer Kit Samples and Libraries ,可以使用下面的代码克隆

git clone https://github.com/Microsoft/Quantum.git

如果发现自己无法访问,那么可以使用 gitee 进行克隆,新建一个项目选择远程链接,这样就好。

打开 QsharpLibraries.sln 可以发现提示缺少库,一般是没有 F# ,需要安装一下。

但是这时会发现,项目无法编译,需要还原Nuget,微软虽然提高了在中国的 Nuget 速度,但是实际还原的时间还是可以去弄一些咖啡,回来差不多就还原好了。注意这时需要关闭博客园的 Nuget ,他没有这些东西,如果使用了他了,就需要清理文件夹。

因为垃圾 VS 不能帮你把库引用,所以需要在还原成功打开每个项目的引用,点击一下找不到的引用,这时会自动引用。

测试

如果发现所有库都安装,那么就可以开始编译,选择 TeleportationSample 项目,右击他为启动。

编译的时候注意关闭 Resharper 的编译,这时需要使用 VS 的编译,虽然我小伙伴使用 Resharper 可以成功,但是我自己失败了。

按下 F5 就可以看到输出,如果可以看到下面的输出,那么你的环境就弄好了

请看 Setting up the Q# development environment

本文只是告诉大家如何搭建环境,实际没有告诉大家如何写Q#,在我后面有时间在写


本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。欢迎转载、使用、重新发布,但务必保留文章署名林德熙(包含链接:http://blog.csdn.net/lindexi_gd ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请与我联系

如何使用 Q#的更多相关文章

  1. IGS_学习笔记03_Integrated SOA Gateway设定配置(案例)

    20150506 Created By BaoXinjian

  2. 看完SQL Server 2014 Q/A答疑集锦:想不升级都难!

    看完SQL Server 2014 Q/A答疑集锦:想不升级都难! 转载自:http://mp.weixin.qq.com/s/5rZCgnMKmJqeC7hbe4CZ_g 本期嘉宾为微软技术中心技术 ...

  3. Create a bridge using a tagged vlan (8021.q) interface

    SOLUTION VERIFIED April 27 2013 KB26727 Environment Red Hat Enterprise Linux 5 Red Hat Enterprise Li ...

  4. 《开源博客Q群》和《NET上海Q群》入群须知

    开源博客Q群 群名:<嗨-博客> 群号:469075305(已满) 491585006(New) 群简介:“我们每个猿都有一个搭建自己独立博客的梦”. 入群要求: 您可以是HR,私聊管理员 ...

  5. 浅谈Angular的 $q, defer, promise

    浅谈Angular的 $q, defer, promise 时间 2016-01-13 00:28:00  博客园-原创精华区 原文  http://www.cnblogs.com/big-snow/ ...

  6. 我的2013 Q.E.D

    "旧历的年底毕竟最像年底,村镇上不必说,就在天空中也显出将到新年的气象来.灰白色的沉重的晚云中间时时发出闪光,接着一声钝响,是送灶的爆竹:近处燃放的可就更强烈了,震耳的大音还没有息,空气里已 ...

  7. H5页面微信分享和手Q分享设置

    RT: 一. 手Q分享: 如下代码所示:设置好 description,name,image,即可,唯一注意的是image最好是200*200,要不然过小不美观,过大加载太慢 <head> ...

  8. mac 修改command+q 退出

    实在受不了! 在chrome中command+w 是关闭当前页面,command+q 退出浏览器: 经常查阅资料打开了N多个窗口,关闭时不小心将command+q当command+w按: so ... ...

  9. $q -- AngularJS中的服务(理解)

      描述 译者注: 看到了一篇非常好的文章,如果你有兴趣,可以查看: Promises与Javascript异步编程 , 里面对Promises规范和使用情景,好处讲的非常好透彻,个人觉得简单易懂. ...

  10. Ruby 里的 %Q, %q, %W, %w, %x, %r, %s, %i (译)转

    原文地址  转自 %Q 用于替代双引号的字符串. 当你需要在字符串里放入很多引号时候, 可以直接用下面方法而不需要在引号前逐个添加反斜杠 (\") >> %Q(Joe said: ...

随机推荐

  1. Ant 给project打包

    写了一段主要的war打包.编译文件复制的 ant 配置文件 xml <?xml version="1.0" encoding="utf-8"? > ...

  2. Python2下载单张图片和爬取网页图片

    一.需求分析 1.知道图片的url地址,将图片下载到本地. 2.知道网页地址,将图片列表中的图片全部下载到本地. 二.准备工作 1.开发系统:win7 64位. 2.开发环境:python2.7. 3 ...

  3. (转)Maven依赖的jar包下载不了、jar更新不了的解决办法

    场景一: 使用Maven的同学可能偶尔会遇到这种情况:pom.xml中依赖了项目需要的某个jar文件,但是使用Maven –> update project 还是没办法下载该jar到项目中,你可 ...

  4. springboot整合redis

    springboot-整合redis   springboot学习笔记-4 整合Druid数据源和使用@Cache简化redis配置 一.整合Druid数据源 Druid是一个关系型数据库连接池,是阿 ...

  5. C# Lock、Monitor避免死锁

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  6. 【jQuery入门】(5)---jQuery CSS

    jQuery  CSS      1.jQuery 文档操作方法        1.addClass() 方法: addClass() 方法向被选元素添加一个或多个类.该方法不会移除已存在的 clas ...

  7. 小型Web页打包优化(下)

    之前我们推送了一篇小型Web项目打包优化文章,(链接),我们使用了一段时间, 在这过程中我们也一直在思考, 怎么能把结构做的更好.于是我们改造了一版, 把可以改进的地方和可能会出现的问题, 在这一版中 ...

  8. BSGS离散对数(Baby-Step-Giant-Step)

    BSGS离散对数(Baby-Step-Giant-Step) 题目: 给定\(x,y,p,\)求最小的自然数\(k\)满足\(x^k=y(\mod p)\)\(p\le2^{31}\)(满足一定有答案 ...

  9. boost::assign(标准容器填充库)

    boost::assign通过对"+="和","的重载非常方便的填充标准容器(std::vector,std::set,std::list,std::map), ...

  10. [数据结构]C语言队列的实现

    我个人把链表.队列.栈分为一类,然后图.树分为一类.(串不考虑),分类的理由就是每一类有规律可循,即你能通过修改极少数的代码把链表变成队列.栈.(这里我们不考虑其他诸如设计模式等因素),因此本贴在讲完 ...