C++/CLI在vs上的安装和初步使用教程

C++/CLI中见过这个符号:^

C++中我们用*来表示一个指针,在C++/CLI中,我们用符号^来表示句柄。

现在*用来指定CRT heap上的原生指针,而句柄是安全指针,它位于托管堆上。

你可以把句柄当成引用来考虑,和原生指针不同的是,他们不会引起内存泄漏,即便没有对它们进行适当的删除,因为GC会处理这些问题,并且他们没有一个固定的内存地址,所以在执行的时候它们会被移来移去。

%对于^就相当于&对于*

N* pn = new N;//分配在原生heap上

n& rn = *pn;//绑定一个普通引用到原生对象

R^ hr = gcnew R;//分配在CLI heap上

r% rr = *hr;//绑定跟踪的引用到gc-lvalue

一 在VS2017/2019 安装 C++/CLI的模块支持



二 新建C++/CLI项目

三 添加源文件

String^ fileName = "textfile.txt";
StreamWriter^ sw = gcnew StreamWriter(fileName);

If you use the sample program, notice thatyou use the gcnew keyword instead of new when creating a .NET object,and that gcnew returns a handle( ^ ) rather than a pointer ( * ):


using namespace System;
using namespace System::IO;

int main()
{
	String^ fileName = "textfile.txt";
	StreamWriter^ sw = gcnew StreamWriter(fileName);
	sw->WriteLine("Hi Major");
	sw->Close();
	Console::WriteLine("a new file ('{0}') has been written", fileName);
	return 0;
}


到此这篇关于C++/CLI在vs上的安装和初步使用的文章就介绍到这了,更多相关C++ CLI安装使用内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • C/C++ 开发神器CLion使用入门超详细教程

    CLion是Jetbrains公司旗下新推出的一款专为开发C/C++所设计的跨平台IDE,它是以IntelliJ为基础设计的,同时还包含了许多智能功能来提高开发人员的生产力. Clion2020.2.x最新激活码破解版附安装教程(Mac Linux Windows) https://www.jb51.net/article/200548.htm 同样支持python哦,相信使用过IntelliJ idea开发过java的盆友都很清楚该IDE的强大,所以做为Jetbrains旗下的c/c++开发工

  • 解决安装mysqlclient的时候出现Microsoft Visual C++ 14.0 is required报错

    在安装mysqlclient的时候出现了以下报错: 解决办法: 1.到提示网址:https://visualstudio.microsoft.com/download/里面下载对应VC++版本安装后继续安装mysqlclient.但是本人没有找到对应文件,故不再过多赘述,这里说下第二种方法. 2.1到https://www.lfd.uci.edu/~gohlke/pythonlibs/找到mysqlclient编译包下载对应版本: 注:前面代表python版本,后面的win代表Python位数.

  • C++ 中CListCtrl的每个项都显示不同的提示信息

    C++ 中CListCtrl的每个项都显示不同的提示信息 添加CToolTipCtrl成员变量m_toolTipCtrl,CListCtrl成员变量m_ListUser,CImageList成员变量m_imageList(这个可以不要) 在OnInitDialog()函数里加下面代码 m_BoradcastEnd.EnableWindow(FALSE); m_imageList.Create(32, 32, ILC_COLOR8, 2, 2); DWORD dwStyle = m_ListUse

  • Mac下使用Eclipse编译C/C++文件出现 launch failed, binary not found 解决方案

    新建C/C++工程第一页,toolchains选择哪个都一样,如图: 第二步: 而后点击"Advanced settings",出现下图: 将第一项取消,第二项选上,点击 OK. 而后点击下一步,点击结束. 新工程完成后,随便新建一个语法正确的初始 .c 文件,然后 command+b "Build All",根目录下出现Binaries目录,大功告成!

  • Eclipse中C++连接mysql数据库

    本文为大家分享了Eclipse中C++连接mysql数据库的具体代码,供大家参考,具体内容如下 MinGW的配置在C连mysql里已经提到,这里只说C++跟C配置不同的地方. 首先觉得C++比C方便多了,不用生成.a连接文件,直接使用.lib文件即可 导入.h文件所在目录到C++ Compiler中的includes 添加lib文件搜索 代码: #include <winsock.h> #include <iostream> #include <string> #inc

  • CLion搭建配置C++开发环境的图文教程 (MinGW-W64 GCC-8.1.0)

    1.下载MinGW-W64 GCC 下载地址:MinGW-w64 - for 32 and 64 bit Windows - Browse Files at SourceForge.net MinGW各个版本区别: 我们这里下载MinGW-W64 GCC-8.1.0版本 等待下载完成: 解压到指定路径: 我们这里放到D盘路径下: 2. 下载CLion 下载地址:下载 CLion:适用于 C 和 C++ 的智能跨平台 IDE (jetbrains.com) 3. 安装CLion 4. 配置CLio

  • C++/CLI在vs上的安装和初步使用教程

    C++/CLI中见过这个符号:^ C++中我们用*来表示一个指针,在C++/CLI中,我们用符号^来表示句柄. 现在*用来指定CRT heap上的原生指针,而句柄是安全指针,它位于托管堆上. 你可以把句柄当成引用来考虑,和原生指针不同的是,他们不会引起内存泄漏,即便没有对它们进行适当的删除,因为GC会处理这些问题,并且他们没有一个固定的内存地址,所以在执行的时候它们会被移来移去. %对于^就相当于&对于* N* pn = new N;//分配在原生heap上 n& rn = *pn;//绑

  • 在windows10上安装mysql详细图文教程

    环境:windwos 10(1511) 64bit.mysql 5.7.14 一.下载mysql 1. 在浏览器里打开mysql的官网http://www.mysql.com/ 2. 进入页面顶部的"Downloads" 3. 打开页面底部的"Community(GPL) Downloads" 4. 在页面中间的位置找到我们windows上要用的下载页面"MySQL on Windows(Installer & Tools)" 5. 选择

  • Mysql5.7.11在windows10上的安装与配置(解压版)

    第一步 my-default.ini 添加配置: #绑定IPv4和3306端 bind-address = 127.0.0.1 port = 3306 # 设置mysql的安装目 basedir= E:\mysql # 设置mysql数据库的数据的存放目 datadir=E:\mysql\data # 允许最大连接数 max_connections=200 #设置默认字符集为utf8 default-character-set=utf8 第二步 右击我的电脑–>属性–>高级–>环境变量,

  • 详解在Redis在Centos7上的安装部署

    Redis是一种高级key-value数据库.它跟memcached类似,不过数据可以持久化,而且支持的数据类型很丰富.有字符串,链表,集 合和有序集合.支持在服务器端计算集合的并,交和补集(difference)等,还支持多种排序功能.所以Redis也可以被看成是一个数据结构服务器. Redis的所有数据都是保存在内存中(效率高),然后不定期的通过异步方式保存到磁盘上(这称为"半持久化模式"):也可以把每一次数据变化都写入到一个append only file(aof)里面(这称为&

  • linux上免安装版MySQL5.7.18的教程详解

    1. 下载mysql 从官网下载mysql的压缩包    mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz 2 把下载的包上传到linux上,先安装下依赖包:Ubuntu用 apt-get install libaio*    centOS用yum install libaio* 3 用tar -xzvf mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz 解压 改名并移动到/usr/local  下:mv mysql-5.7.1

  • Oracle 8i在P4上的安装

    正在看的ORACLE教程是:Oracle 8i在P4上的安装.方法一: 1.将ORACLE软件拷贝到硬盘. 2.将 硬盘目录文件stageComponentsoracle.swd.jre1.1.7.30/1 DataFilesExpandedjrewin32binsymcjit.dll 的文件改名为 symcjit.old 3.从installwin32 目录下运行SETUP.exe 文件进行安装. 前提是:机器上没有装过Oracle产品.如有的话请先卸载,再将注册表中Oracle项删除. 方法

  • PHP在XP下IIS和Apache2服务器上的安装

    最近,有许多朋友问我在WindowsXp下PHP的安装过程,正好最近我在自己的机器上成功的以模块化的方式安装了PHP4.23.既然这么多朋友需要,我就以最常见的IIS和Apache服务器为例,把PHP在WindowsXP下的安装过程写出来吧,希望能对要安装PHP的朋友有点帮助.如果不加特殊说明,以下的介绍同时也适用于Win2000版本. 一.概述: 在安装之间,你必须先弄懂PHP安装的两种不同模式,一种是Cgi模式(CGI executable),另一种是模块化安装方式.可以这样来区别:在CGI

  • PHP4在WinXP下IIS和Apache2服务器上的安装实例

    最近,有许多朋友问我在WindowsXp下PHP的安装过程,正好最近我在自己的机器上成功的以模块化的方式安装了PHP4.23.既然这么多朋友需要,我就以最常见的IIS和Apache服务器为例,把PHP在WindowsXP下的安装过程写出来吧,希望能对要安装PHP的朋友有点帮助.如果不加特殊说明,以下的介绍同时也适用于Win2000版本. 一.概述:   在安装之间,你必须先弄懂PHP安装的两种不同模式,一种是Cgi模式(CGI executable),另一种是模块化安装方式.可以这样来区别:在C

  • MySql在Mac上的安装与配置详解

    一.下载安装 官网下载社区版dmg安装文件: https://dev.mysql.com/downloads/mysql/ 1.执行安装文件,按步骤完成安装. 2.安装完成后终端输入: mysql --version; ----显示版本号说明正常,若显示command not found,在终端输入如下,"/usr/local/mysql/bin/mysql"为mysql默认安装路径: $ cd /usr/local/bin/ $ sudo ln -fs /usr/local/mysq

  • win10上如何安装mysql5.7.16(解压缩版)

    注:本文涉及的是解压缩版的安装 安装教程 下载mysql 地址是:http://dev.mysql.com/downloads/mysql/ 解压缩下载的文件 修改ini文件(在解压缩后的mysql文件夹中) 实际上修改的是my-default.ini文件 在文件中添加如下路径和地址 其中的data文件夹是没有的必须自己创建. # These are commonly set, remove the # and set as required. #这个是mysql所在的文件夹 basedir =

随机推荐