设为首页 加入收藏

TOP

2.5.7 使用C++/CLI
2013-10-07 00:52:19 来源: 作者: 【 】 浏览:65
Tags:2.5.7 使用 /CLI

2.5.7  使用C++(www.cppentry.com)/CLI

前面提及,C++(www.cppentry.com)/CLI的目标是把C++(www.cppentry.com)带到CLI平台上,使C++(www.cppentry.com)能够在CLI平台上发挥最大的能力。通过C++(www.cppentry.com)/CLI中的标准扩展,C++(www.cppentry.com)具有了原来没有的动态编程(www.cppentry.com)能力及一系列的first class(一等公民)的.NET特性。

读者有时会发现术语CLI和CLR可交换使用,实际上这两者之间的区别在于:CLI是一种标准规范,而CLR却是微软对CLI的实现。当我们使用C++(www.cppentry.com)/CLI时,就可以通过CLI接口与CLR通信,而CLR相当于建立在操作系统之上的一个虚拟层。它们之间的调用关系如图2-56所示。

 
图2-56  使用C++(www.cppentry.com)/CLI开发应用程序

现在动手

接下来,我们使用C++(www.cppentry.com)/CLI来操作文件并输出茴字。

【程序 2-17】使用C++(www.cppentry.com)/CLI输出茴字

  1. 01  #include "stdafx.h" 
  2. 02    
  3. 03  using namespace System;  
  4. 04  using namespace System::IO;  
  5. 05    
  6. 06  int main(array<System::String ^> ^args)  
  7. 07  {  
  8. 08      String^ path = "test.out";  
  9. 09    
  10. 10      //写文件  
  11. 11      StreamWriter^ sw = File::CreateText(path);  
  12. 12      sw->WriteLine("茴香豆的茴");  
  13. 13      sw->Close();  
  14. 14    
  15. 15      //读文件  
  16. 16      StreamReader^ sr = File::OpenText(path);  
  17. 17      String^ s = "";  
  18. 18      if (s = sr->ReadLine())  
  19. 19      {  
  20. 20          Console::WriteLine(s);  
  21. 21      }22 } 

简直太简洁了,不是吗?与本例子相关的.NET Framework 类包括如下。

Console:对应于控制台输出。

File:文件类,与CFile相似。

StreamWriter:流的写入器。

StreamReader:流的读取器。

光盘导读

该项目对应于光盘中的目录"\ch02\ ClrWriter"。

【责任编辑:云霞 TEL:(010)68476606】

回书目   上一节   下一节

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇2.6.2 MSDN与MSDN库 下一篇2.6.1 源代码

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: