找回密码
 立即注册

QQ登录

只需一步,快速开始

Iver

版主

16

主题

260

帖子

686

积分

版主

Rank: 7Rank: 7Rank: 7

积分
686

活字格认证

Iver
版主   /  发表于:2012-3-8 12:29  /   查看:5364  /  回复:4
大家好!
校园宣讲过程中,有很多同学问到使用C++实现算法的问题,这里对相关问题做一下解答。

首先,如果你不是对Visual C#以及Visual Basic一无所知,又很熟悉C++的开发,我们还是推荐首选Visual C#或者Visual Basic进行开发,这样可以省去一些不必要的麻烦。如果一定要选择Visual C++,请阅读以下内容。

1. 能否使用C++实现算法?
答:可以。但要求全部使用托管代码。

2. 如何选择工程类型?
答:在创建工程时,选择类型为C++->CLR->Class Library。

3. 如何添加引用?
答:工程创建之后,打开工程属性,点选CommonProperties,再点击对话框下部中间偏左的"Add New References"。
在弹出的添加引用对话框中,选择Browse选项卡,找到Interfaces.dll,添加对大赛接口程序集的引用。
如有其它.Net程序集未被引用,如System.Drawing.dll,请选择添加引用对话框中的.Net选项卡,从列表中添加。

4. 如何确保工程中仅使用托管代码?
答:工程创建之后,打开工程属性,设置Configuration Properties->Common Language RunTime Support的值为“Safe MSIL Common Language RunTime Support (/clr:safe)”。

5. 使用托管的C++会比使用Visual C#或者Visual Basic语言有更高的执行效率吗?
答:全部使用托管代码完成算法,编译的结果是MSIL,运行在CLR之上,与其它语言编译生成的程序集的执行效率是一致的。

4 个回复

倒序浏览
Fingers_Dancing
新手上路   /  发表于:2012-3-8 22:24:00
沙发

回复 1# Iver 的帖子

已经配置了,但还是提示(“IPlayer”: 未定义基类)
怎么回事呢?
回复 使用道具 举报
Iver
版主   /  发表于:2012-3-9 10:22:00
板凳

回复 2# Fingers_Dancing 的帖子

你好,Fingers_Dancing:
你的问题可能是由于未添加对大赛接口程序集的引用,我更新了上面的说明,请参考第三条中的说明。
回复 使用道具 举报
chentiancai
中级会员   /  发表于:2012-4-14 20:08:00
地板
?        "基于.Net Framework 4.0或更高版本、使用C#或其它语言开发,只能使用托管代码。"这是文档《参赛选手须知》里面的一句话。。。是不是说使用C#也必须使用托管????
回复 使用道具 举报
Iver
版主   /  发表于:2012-4-14 20:48:00
5#

回复 4# chentiancai 的帖子

是的。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部