在COM中使用的标准类Class如下所示:

  _bstr_t:对BSTR类型进行打包,并提供有用的操作方法;

  _com_error:定义抛出的error对象;

  _com_ptr_t:封装COM接口指针

  _variant_t:对VARIANT类型进行打包,并提供有用的操作和方法;

一、_variant_t类的简单介绍:

  _variant_t 对象封装了VARIANT数据类型。

  The class manages resoutce allocation and deallocation and makes function  calls to VariantInit and VariantClear as appropriate.

  (1)_variant_t类提供的方法:

    1>构造函数

      _variant_t

      对_variant_t变量初始化调用的是_variant_t的构造函数。我们一般习惯于用一个int型的变量对数字类的变量进行初始化,这对_variant_t变量是不允许的。(原因很简单,_variant_t的构造函数中没有用整型(Int)对其初始化的构造函数)

      可先将整型转化成long,然后再对其进行初始化。

    2>Attach()

      将VARIANT对象附加到_variant_t对象中。

    3>Clear()

      清除封装的VARIANT对象。

    4>Change Type

      将_variant_t对象的类型更改为指示的VARTYPE。

    5>Detach

      从此_variant_t对象中分离封装的VARIANT对象。

    6>SetString

      将一个string赋值给_variant_t对象。

    7>Operators

      赋值操作,给现有的_variant_t对象赋一个新值。

    8>operator ==,!=

      对比两个_variant_t对象是否相等;

    9>Extractors

      从封装的VARIANT对象中提取数据。

  (2)_variant_t的定义:

    _variant_t类封闭了VARIANT数据类型,VARIANT是一个结构体类型,我们可以看一下它的定义。

    

   注意:vt用来存储内部变量(联合体中保存的变量)的类型,联合体用来存储对应类型的值

二、数据类型转换

   

    转自:https://blog.csdn.net/suyouli/article/details/58594957

        http://c.biancheng.net/view/422.html

_variant_t 与其他数据类型的转换的更多相关文章

  1. _variant_t与其他数据类型的转换

    转自:http://kuaixingdong.blog.hexun.com/29627840_d.html 我们先看看COM所支持的一些类型的基本类: (微软提供,在comdef.h中定义) 在COM ...

  2. java中数据类型的转换

    数据类型的转换,分为自动转换和强制转换. 自动转换是程序执行过程中“悄然”进行的转换,不需要用户提前声明,一般是从位数低的类型向位数高的类型转换 强制转换必须在代码中声明,转换顺序不受限制 自动数据类 ...

  3. Java的基本数据类型与转换

    1.1 Java为什么需要保留基本数据类型 http://www.importnew.com/11915.html 基本数据类型对大多数业务相关或网络应用程序没有太大的用处,这些应用一般是采用客户端/ ...

  4. java的数据类型的转换

    一:java的数据类型转换除布尔类型boolean(不能转换)有两种:<一> 自动转换: <二> 强制转换 <一>.自动转换:就是将小的数据类型自动转换成大的数据类 ...

  5. JavaScript学习笔记——数据类型强制转换和隐式转换

    javascript数据类型强制转换 一.转换为数值类型 Number(参数) 把任何的类型转换为数值类型 A.如果是布尔值,false为0,true为1 B.如果是数字,转换成为本身.将无意义的后导 ...

  6. JAVA数据类型自动转换,与强制转换

    一.数据类型自动转换 public class Test{ public static void main(String[] args){ int a = 1; double b = 1.5; dou ...

  7. Java学习笔记之:Java数据类型的转换

    一.介绍 数据类型的转换,分为自动转换和强制转换.自动转换是程序在执行过程中“悄然”进行的转换,不需要用户提前声明,一般是从位数低的类型向位数高的类型转换:强制类型转换则必须在代码中声明,转换顺序不受 ...

  8. 语言基础:C#输入输出与数据类型及其转换

    今天学习了C#的定义及特点,Visual Studio.Net的集成开发环境和C#语言基础. C#语言基础资料——输入输出与数据类型及其转换 函数的四要素:名称,输入,输出,加工 输出 Console ...

  9. C#基础(八)——C#数据类型的转换

    C#数据类型的转换主要有以下几种方式: 1.强制转换 注意:char类型不能强制转换成int,如果使用强制转化,得到的是原整数的ASCII码值. 2.class.parse(string类型的变量), ...

随机推荐

  1. python 字符串模板

    from string import Template print(type(Template)) mystr = Template("hi,$name 你是$baby") pri ...

  2. 使用 python 编写一个授权登录验证的模块

    使用 python 编写一个授权登录验证的模块 我们编写的思路: 1.登录的逻辑:如果用户名和密码正确,就返回 token . 2.生成 token 的逻辑,根据用户名,随机数,当前时间 + 2 小时 ...

  3. cookies ,session,localstorage讲解

    一 .cookie (1)简介 因为HTTP协议是无状态的,服务器不知道用户上一次做了什么,这严重阻碍了交互式Web应用程序的实现.在典型的网上购物场景中,用户浏览了几个页面,买了一盒饼干和两饮料.最 ...

  4. Leetcode题目64.最小路径和(动态规划-中等)

    题目描述: 给定一个包含非负整数的 m x n 网格,请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小. 说明:每次只能向下或者向右移动一步. 示例: 输入: [ [1,3,1], [1, ...

  5. LeetCode687----最长同值路径

    给定一个二叉树,找到最长的路径,这个路径中的每个节点具有相同值. 这条路径可以经过也可以不经过根节点. 注意:两个节点之间的路径长度由它们之间的边数表示. 示例 1: 输入: 5 / \ 4 5 / ...

  6. linux不能ping通主机,主机能ping通linux

    1).打开控制面板,点击“系统和安全”选项.然后打开“Windows防火墙”.2).点击进入“高级设置”,选择“入站规则”.3).在入门规则中找到“文件和打印机共享(回显请求-ICMPv4-In)”选 ...

  7. 【SR汇总】算法时间效率

    1.SRCNN-0.39s SRCNN处理速度. 论文:Learning a Deep Convolutional Network forImage Super-Resolution 中,4.2节. ...

  8. LC 583. Delete Operation for Two Strings

    Given two words word1 and word2, find the minimum number of steps required to make word1 and word2 t ...

  9. HttpURLConnection提交数据

    使用GET方式向服务器端提交数据 * 原理:把要提交的数据组拼到Url后面 * http协议规定数据长度不超过4kb,IE浏览器超过1kb就会丢弃掉后面的数据 * 缺点:数据不安全 * 优点:代码书写 ...

  10. div固定在浏览器的最上方,不随滚动条滚动

    #topDIV { position: fixed; ; ; width: 100%; height: 35px; border-bottom: 1px solid #eee; background- ...