iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >C++中CLI模块的基本类型有哪些
  • 871
分享到

C++中CLI模块的基本类型有哪些

2023-07-02 15:07:02 871人浏览 独家记忆
摘要

本文小编为大家详细介绍“c++中CLI模块的基本类型有哪些”,内容详细,步骤清晰,细节处理妥当,希望这篇“C++中CLI模块的基本类型有哪些”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。数值类型对于基本的数值类型

本文小编为大家详细介绍“c++中CLI模块的基本类型有哪些”,内容详细,步骤清晰,细节处理妥当,希望这篇“C++中CLI模块的基本类型有哪些”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

数值类型

对于基本的数值类型,在C++/CLI中是可以直接映射为托管类型的数值的,可以同时应用于托管类型和非托管类型,编译器会将其自动转换。

基本类型

System命名空间中对应的类

注释/用法

bool

System::Boolean

bool dirty = false;

char

System::SByte

char sp = ' ';

signed char

System::SByte

signed char ch = -1;

unsigned char

System::Byte

unsigned char ch = '\0';

wchar_t

System::Char

wchar_t wch = ch;

short

System::Int16

short s = ch;

unsigned short

System::UInt16

unsigned short s = 0xffff;

int

System::Int32

int ival = s;

unsigned int

System::UInt32

unsigned int ui = 0xffffffff;

long

System::Int32

long lval = ival;

unsigned long

System::UInt32

unsigned long ul = ui;

long long

System::Int64

long long etime = ui;

unsigned long long

System::UInt64

unsigned long long mtime = etime;

float

System::Single

float f = 3.14f;

double

System::Double

double d = 3.14159;

long double

System::Double

long double d = 3.14159L;

字符串

字符串CLI已经内置了:System::String,但C++的常用字符串有char*、wchar_t*、std::string等好多种,编译器提供了char*、wchar_t*到System::String的自动转换:

System::String^ s = "hello worold";System::String^ s2 = L"hello worold";

另外,也可以使用GCnew创建托管字符串:

System::String^ s = gcnew String("hello worold");

但是,对于System::String转char*,系统没有直接的语法支持。方法有很多种,我通常使用如下方式来转换:

IntPtr ip = Marshal::StringToHGlobalAnsi(str);const char* ch = static_cast<const char*>(ip.ToPointer());//do something with chMarshal::FreeHGlobal(ip);

这里有个需要注意的地方是在使用完转换出来的const char*后需要释放掉转换过程中的Intptr,如果没有太多需要考虑性能的地方,大可以使用一个std::string将其拷贝走,写成如下函数形式:  

    #include <string>    using namespace std;    using namespace System;    using namespace System::Runtime::InteropServices;    string cast_to_string(String^ str)    {        IntPtr ip = Marshal::StringToHGlobalAnsi(str);        const char* ch = static_cast<const char*>(ip.ToPointer());        string stdStr = ch;        Marshal::FreeHGlobal(ip);        return stdStr;    }

读到这里,这篇“C++中CLI模块的基本类型有哪些”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注编程网其他教程频道。

--结束END--

本文标题: C++中CLI模块的基本类型有哪些

本文链接: https://www.lsjlt.com/news/342641.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • C++中CLI模块的基本类型有哪些
    本文小编为大家详细介绍“C++中CLI模块的基本类型有哪些”,内容详细,步骤清晰,细节处理妥当,希望这篇“C++中CLI模块的基本类型有哪些”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。数值类型对于基本的数值类型...
    99+
    2023-07-02
  • C++超集C++/CLI模块的基本类型
    数值类型 对于基本的数值类型,在C++/CLI中是可以直接映射为托管类型的数值的,可以同时应用于托管类型和非托管类型,编译器会将其自动转换。 基本类型System命名空间中对应的类注...
    99+
    2024-04-02
  • c#中的基本数据类型有哪些
    c#中提供的基本数据类型包括:整型(byte、sbyte、short、ushort、int、uint、long、ulong),浮点型(float、double),其他类型(char、bo...
    99+
    2024-04-04
    c#
  • C++超集C++/CLI模块的基本用法
    C#和C++是非常相似的两种语言,然而我们却常常将其用于两种不同的地方,C#得益于其简洁的语法和丰富的类库,常用来构建业务系统。C++则具有底层API的访问能力和拔尖的执行效率,往往...
    99+
    2024-04-02
  • C++超集C++/CLI模块的基本语法
    托管对象的创建和引用 在前文中我们已经演示过创建一个托管对象,对于如下C#代码: System.Object x = new System.Object(); 其在C++/CLI中的...
    99+
    2024-04-02
  • C++中CLI模块的基本语法是什么
    本文小编为大家详细介绍“C++中CLI模块的基本语法是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“C++中CLI模块的基本语法是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。托管对象的创建和引用在前文...
    99+
    2023-07-02
  • Python中有哪些模块类型
    本篇文章给大家分享的是有关Python中有哪些模块类型,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。内置标准模块,又称为标准库,如 sys、time、math、json 模块等...
    99+
    2023-06-15
  • c#基本数据类型有哪些
    c# 中的基本数据类型表示单个特定值的内置数据类型,它们不可变,这意味着一旦创建,其值就无法更改。这些数据类型包括:整型类型:byte、sbyte、short、ushort、int、ui...
    99+
    2024-04-04
    c#
  • Python的datetime模块有哪些类型
    本篇内容介绍了“Python的datetime模块有哪些类型”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!  datetime 模块提供了可...
    99+
    2023-06-02
  • c++的变量和基本类型都有哪些
    本篇文章为大家展示了c++的变量和基本类型都有哪些,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。1.类型转换对象的类型定义了对象能包含的数据和能参与的运算,其中一种运算被大多数类型支持,就是将对象从...
    99+
    2023-06-22
  • vue的基本类型有哪些
    这篇文章主要介绍了vue的基本类型有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇vue的基本类型有哪些文章都会有所收获,下面我们一起来看看吧。 ...
    99+
    2024-04-02
  • c语言的基本数据类型有哪些
    C语言的基本数据类型有以下几种:1. 整型(int):用于表示整数,包括正整数、负整数和零。可使用关键字int声明,占用4个字节。2...
    99+
    2023-09-20
    c语言
  • TypeScript基本类型有哪些
    今天小编给大家分享一下TypeScript基本类型有哪些的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来...
    99+
    2024-04-02
  • Lua基本类型有哪些
    这篇文章主要介绍“Lua基本类型有哪些”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Lua基本类型有哪些”文章能帮助大家解决问题。Lua是一种动态类型的语言。在语言中没有类型定义的语法,每个值都带有...
    99+
    2023-06-27
  • java中的基本数据类型有哪些
    这篇文章主要介绍java中的基本数据类型有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!基本数据类型1.整数类型:byte、short、int、long注意:1.java各整数类...
    99+
    2024-04-02
  • Redis中的基本数据类型有哪些
    这篇文章主要讲解了“Redis中的基本数据类型有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Redis中的基本数据类型有哪些”吧!Redis数据结构简...
    99+
    2024-04-02
  • JavaScript中的基本数据类型有哪些
    小编给大家分享一下JavaScript中的基本数据类型有哪些,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!一、区分大小写在JavaScript中,所有的一切(变量、函数和操作符)都区分大小...
    99+
    2024-04-02
  • php中变量的基本类型有哪些
    这篇文章主要介绍“php中变量的基本类型有哪些”,在日常操作中,相信很多人在php中变量的基本类型有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”php中变量的基本类型有哪些”的疑惑有所帮助!接下来,请跟...
    99+
    2023-06-25
  • java中有哪些基本数据类型
    java的基本数据类型:1.字节型byte;2.短整型short;3.整型int;4.长整型long;5.单精度浮点型float;6.双精度浮点型double;7.布尔型boolean;8.字符型char;java中基本数据类型有:字节型b...
    99+
    2024-04-02
  • python中有哪些模块类
    本篇文章给大家分享的是有关python中有哪些模块类,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。python主要应用领域有哪些1、云计算,典型应用OpenStack。2、WE...
    99+
    2023-06-14
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作