社区
C++ 语言
帖子详情
C++/CLI & VC2005讨论
zhan_yonghua
2006-11-26 08:26:45
刚下了个C++/CLI草案1.14及Apress.Pro.Visual.C++.CLI.and.the.dot.NET.2.0.Platform.Dec.2005,翻了几页,
总觉得C++/CLI非常怪异,实在是别扭得很,本人用C++已有数年,实在看不到C++/CLI的前景,很迷茫,请各位大侠发表一下对VC2005及C++/CLI的看法!
...全文
571
34
打赏
收藏
C++/CLI & VC2005讨论
刚下了个C++/CLI草案1.14及Apress.Pro.Visual.C++.CLI.and.the.dot.NET.2.0.Platform.Dec.2005,翻了几页, 总觉得C++/CLI非常怪异,实在是别扭得很,本人用C++已有数年,实在看不到C++/CLI的前景,很迷茫,请各位大侠发表一下对VC2005及C++/CLI的看法!
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
34 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
htqx
2006-12-10
打赏
举报
回复
c++ /CLI 的优势:
1。可以无视 mfc
2. 可以使用.net庞大的类库
3。可以使用 c++
感觉结合的比较好的。
zhan_yonghua
2006-12-10
打赏
举报
回复
GO ON
sandrowjw
2006-12-03
打赏
举报
回复
ASP.Net程序需要配一个Web.config文件。
至于C++/CLI,我从来不指望用户会去装.Net Framework……
axx1611
2006-12-03
打赏
举报
回复
我通常使用C++/CLI都是在和C#接口的地方
如LSSS所说 C#和原生C++代码交互存在许多困难,这种地方当然首选C++/CLI,事实上我也是这么做的。不过不赞成整个项目都采用C++/CLR去写,那样会累死你的,你会发现使用C#的开发效率能比起高出好几倍。
所以C++/CLR绝对1不能替代C#,2不能替代原生C++,甚至在很多场合,它就只适合做C#(CLR)-原生C++的桥梁,所占代码量不需要超过整个工程的1/10。
zhan_yonghua
2006-12-03
打赏
举报
回复
Mephisto_76((望美人如梦)) 说得不错,赞一个
solar
2006-12-03
打赏
举报
回复
gz
Mephisto_76
2006-12-03
打赏
举报
回复
前几天没事用了一下,感觉主要可以完成新老代码的无缝结合。
有人说在.Net下不如用C#,但是C#在调用Win32或者C++写的代码(DLL、Lib)的功能有时候是很烦琐的,不信的话搞一个复杂的平台调用来看看。而C++/CLI在这方面当然不让是首选,你可以将绝大部分功能用C++实现(当然更有可能是已经用C++实现好了),然后创建一个CLR DLL 项目,包括原来的头文件、lib库、DLL,选/clr编译选项就可以轻松的搞定了,而且这个CLR DLL可以供其它语言如C#使用。而C#只能有两个选择,要么是COM包装,要么是平台调用。这两个无论从效率和优雅程度上来说,肯定不及前者。
还有人说不能跨平台了,或者是必须依赖.Net Framework了。这确实是事实,但事已至此,已非我们个人能决定了。既然微软和SUN、IBM还有其它寡头已经决定将这一场战争放在.NET和Java平台进行了,我们只能顺应潮流(我指的是应用程序,工具和基础软件不在此列)。
至于有人说不如用C#,这个我也有看法。我用C#多年,十分喜欢其语法清爽简洁,但对其一些缺点也有抱怨(比如资源的释放不够自然,要用using等等,平台调用的烦琐等等)。C++/CLI相比而言,在这些方面以及IL语言的映射方面,稍微优越。如ref class,value class,以及析构函数超出对象范围自动调用Dispose方法等,以及引用类型模拟栈语意等都是不错的。能够在CLI中定义Native对象的指针(但不能引用Native对象和内置类型),在Native类中可以用gcroot类包装CLI类型作为成员等等,这些与既有代码的交互能力都要强于C#和.Net平台上的其它语言。
但是C++/CLI也有令我不满意的地方,就是其语法十分累赘。每次要引用CLI类型时都要加上一个“^”尾巴,还有一些较容易混淆的地方。但是当我看了微软的官方说明(不知道是Herb Sutter还是Lippman执笔的),我觉得其良苦用心还是值得尊敬。
如果你决意不将自己升级到.Net,又或者你无意在Windows上进行开发,那么你完全没有必要使用C++/CLI。但是如果你希望在你的.Net程序中使用既有的代码,又或者将你的C++代码迁移到.Net平台,那么我认为C++/CLI是一个可选的桥梁。通过尽可能将C++/CLI局限在局部的地方,你将尽可能得保持你的代码的可移植性。
zhan_yonghua
2006-12-02
打赏
举报
回复
米人啊,最近在用VC2005写一个ATL SERVER WEB服务的WEB SERVICE,但调试时老是报错,说无法启动WEB服务....请验证WEB.COFIG配置正确之类~~~有没谁遇过此情况?
zhan_yonghua
2006-12-01
打赏
举报
回复
来UP...
zhan_yonghua
2006-11-29
打赏
举报
回复
继续UP,兄弟请继续
syy6
2006-11-29
打赏
举报
回复
C++/CLI总体是感觉怪怪的,而且很复杂。
还是托管用C#好些。
zhan_yonghua
2006-11-29
打赏
举报
回复
迷茫...
shanlu9
2006-11-29
打赏
举报
回复
看来VC++的前途有点不大明朗,迷茫。。。
axx1611
2006-11-28
打赏
举报
回复
CLI不是C++的出路,楼主不用费心了。
zhan_yonghua
2006-11-28
打赏
举报
回复
我来UP,大家接着讨论,看来C++/CLI与MANAGED C++一样,是个失败的东西!唉...
zhan_yonghua
2006-11-27
打赏
举报
回复
一年前我就打算学习C++/CLI,当时的资料极少,感觉微软VC8还是做得不够成功!
象我们这些习惯于底层编码的程序员,VC6之后该用什么接班呢,总不至于叫我们去用C#吧
axx1611
2006-11-27
打赏
举报
回复
CLI的强大是毋庸置疑的,当然我没有否认MFC的强大,但毕竟也写了几年的MFC了,接触CLI还不到半年,两者的差距是明显的
xiaonian_3654
2006-11-27
打赏
举报
回复
CLI是拿来用的,又不是拿来背的,干吗搞得自己那么痛苦
我只是想说对于windows程序员来说,是一个不错的选择,尤其是做UI,效率高出MFC很多,不弱于DELPHI,而且更强大。
不过个人也比较BS这个东西,离了win32就啥都不啥了
而且托管系统高度排外,混编很麻烦。
========================================================
我没说背CLI啊,MFC虽然工作经验2年多,不过基本上很熟了,大大小小的问题都能搞定,
我没事学那个干什么啊,能有什么强大不强大的阿,
axx1611
2006-11-27
打赏
举报
回复
CLI是拿来用的,又不是拿来背的,干吗搞得自己那么痛苦
我只是想说对于windows程序员来说,是一个不错的选择,尤其是做UI,效率高出MFC很多,不弱于DELPHI,而且更强大。
不过个人也比较BS这个东西,离了win32就啥都不啥了
而且托管系统高度排外,混编很麻烦。
itoaer
2006-11-27
打赏
举报
回复
有了C#,为什么还要CLI,没有看到有多少人在用这个东西
加载更多回复(14)
从原理到实战:打造V
C++
运行库一站式安装工具
动态链接库(DLL)是Windows系统中实现代码复用和模块化的重要机制,其核心原理在于允许多个程序共享同一份库代码,从而节省内存并简化更新。Visual
C++
Redistributable(V
C++
运行库)正是微软为基于Visual Studio
C++
开发的应用程序提供的一套标准DLL集合,确保了软件在不同Windows环境下的兼容性与稳定运行。其技术价值在于解决了软件部署中常见的“DLL地狱”问题,即因缺失或版本冲突导致程序无法启动。这一机制广泛应用于游戏、专业软件及企业级应用的部署场景。针对VC
四年前创游编辑器兼容性安装与现代化适配实践指南
软件开发工具兼容性是技术演进中的常见挑战,特别是在游戏开发领域。随着技术栈迭代加速,老旧开发工具的适配需求日益凸显。从技术原理看,兼容性问题主要源于运行时环境差异、API版本变更和系统架构升级。通过环境适配和依赖修复,老旧工具不仅能继续发挥作用,还能为技术债务管理提供独特价值。在实际应用场景中,项目维护、教学演示和功能对比都需要兼容性解决方案。本文基于环境适配和依赖修复等核心概念,详细解析四年前创游编辑器在现代系统中的完整安装流程,涵盖兼容性设置、功能验证和性能优化等关键技术环节。
自托管LaTeX在线工作区:TexLite部署实战与工程化指南
LaTeX作为学术排版的核心工具,其本地环境安装和版本一致性一直是痛点,TeX Live体积庞大且跨设备配置繁琐。自托管在线工作区将编译环境集中部署到服务器,通过浏览器即可完成文档编写与PDF生成,从原理上解决了环境漂移和协作难题。这种模式尤其适合团队论文协作、跨设备写作和教学场景。TexLite正是一款轻量级自托管LaTeX工作区,支持Docker一键部署,具备源码编辑、自动编译、PDF预览下载等核心功能。本文以TexLite为例,完整梳理从环境准备、Docker容器化部署、中文支持、表格排版到生产环境安
毫秒级本地文件搜索:基于NTFS MFT索引的轻量级检索引擎实现
文件搜索是操作系统基础能力,其性能本质取决于索引机制的设计原理。传统遍历式搜索受限于磁盘I/O与路径解析开销,而基于NTFS文件系统元数据(如MFT主文件表与USN日志)构建内存倒排索引,可绕过目录树遍历,实现毫秒级响应。这种轻量级检索技术不依赖后台服务或云端协同,具备低内存占用、高查询吞吐与强本地隐私保障等工程优势,广泛适用于内容创作、开发运维及嵌入式工具链场景。本文聚焦NTFS卷索引机制与双数组Trie实现,详解如何用
C++
复现稳定可控的桌面端搜索引擎。
国央企如何通过数字化转型提升创新研发决策的科学性?.docx
国央企如何通过数字化转型提升创新研发决策的科学性?
C++ 语言
65,214
社区成员
250,514
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章