C++ 类型转换的特殊用法

C++ 类型转换的特殊用法

下面是ossimLsrRay.h中的一个例子


/*!
* CASTING OPERATOR: ossimEcefRay()
* Looks like a constructor for an ossimEcefRay but is an operation on this
* object. Returns the ossimEcefRay equivalent.
*/
operator ossimEcefRay () const; // inline below

该函数是ossimLsrRay中的函数,用来将ossimLsrRay转换为ossimEcefRay类型,常规思路是在ossimEcefRay类中添加一个构造函数来实现。

这里直接在ossimLsrRay类中实现,可以不用修改ossimEcefRay类的内容。

时间: 2024-10-06 01:34:54

C++ 类型转换的特殊用法的相关文章

第二节 引用变量的强制类型转换

什么是多态 主讲人:王少华       QQ群号:483773664 学习目标: 1)父类与子类间转换:向上转型 2)使用父类作为方法形参实现多态 3)使用父类作为返回值实现多态 一.子类到父类的转换(向上转型) (一)基本数据之间的类型转换 1.自动进行类型转换 //将int型常量或变量的值赋给double型变量,可以自动进行类型转换 int i = 5; double dl = i; 2.强制类型的转换 类型转换运算符是小括号,类型转换运算符的用法是 (type)variable //将do

C++中static_cast和dynamic_cast强制类型转换

在C++标准中,提供了关于类型层次转换中的两个关键字static_cast和dynamic_cast. 一.static_cast关键字(编译时类型检查) 用法:static_cast < type-id > ( expression ),该运算符把expression转换为type-id类型,但没有运行时类型检查来保证转换的安全性,它主要有如下几种用法: (1)用于基本数据类型之间的转换,如把int转换为char,把int转换成enum,但这种转换的安全性需要开发者自己保证(这可以理解为保证

跟王老师学多态(二): 引用变量的强制类型转换

什么是多态 主讲人:王少华       QQ群号:483773664 学习目标: 1)父类与子类间转换:向上转型 2)使用父类作为方法形参实现多态 3)使用父类作为返回值实现多态 一.子类到父类的转换(向上转型) (一)基本数据之间的类型转换 1.自动进行类型转换 1 2 3 //将int型常量或变量的值赋给double型变量,可以自动进行类型转换 int i = 5; double dl = i; 2.强制类型的转换 类型转换运算符是小括号,类型转换运算符的用法是 (type)variable

python中常用内置函数用法总结

强制类型转换:int()float()str()list()tuple()set()dict()总结,这几种类型转换函数得用法基本一致,基本就是int(要转换得数据).返回值类型为对应得数据类型 max():求多个参数的最大值,或可迭代对象中的最大元素min():最小值sum():求和,可迭代对象元素求和pow():求幂,pow(2, 3)等价于2 ** 3round():四舍五入,可以指定保留位数 hex():16进制oct():8进制bin():2进制 print:打印,输出input:输入

stringstream类的简介和用法

一.简介 <sstream>类库定义了三种类:istringstream,ostringstream,stringstream.分别用来进行流的输入,流的输出,输入输出操作.在此演示stringstream的使用.**stringstream最大的特点是可以很方便的实现各种数据类型的转换,不需要像C语言中转换那么麻烦,而且转换非常安全.所以stringstream经常用于方便安全的类型转换. 二.用法 (1)数据的分割(string --> string) 1 #include<s

day02_变量_基本数据类型_数据类型的转换_Scanner_20150731

回顾: 昨天主要讲了3个方面的内容: 1.Linux 操作系统.开源的.免费 服务器端 目录.挂载点.安全级别高 /:根目录 /home/soft01:主目录/家 2.java开发环境 1).java源文件,经过编译,生成.class字节码文件 JVM加载.class并运行.class 跨平台.一次编程到处使用 2)JVM:java虚拟机 加载并运行.class JRE:java运行环境 除了包含JVM以外还包含运行java程序所需要的必须的环境 JRE=JVM+java系统类库 JDK:jav

More Effective C++

条款一:指针与引用的区别 指针与引用看上去完全不同(指针用操作符'*'和'->',引用使用操作符'.'),但是它们似乎有相同的功能.指针与引用都是让你间接引用其他对象.你如何决定在什么时候使用指针,在什么时候使用引用呢? 首先,要认识到在任何情况下都不能用指向空值的引用.一个引用必须总是指向某些对象.因此如果你使用一个变量并让它指向一个对象,但是该变量在某些时候也可能不指向任何对象,这时你应该把变量声明为指针,因为这样你可以赋空值给该变量.相反,如果变量肯定指向一个对象,例如你的设计不允许变量为

20150724 Day02课程

今天是Java预科课程的上课第二天,课程内容如下: 1.变量 硬盘是永久存储数据的介质,不会因为断电而丢失数据:而计算过程中数据会暂存在内存中,断电就会丢失.变量就是内存上的一块空间.变量三要素:数据类型(根据数据类型在内存中申请相应的空间),变量名(由于内存地址不好找(0x0156892321),故用变量名表示),变量值(可以变化). 如果两个变量名相同,则内存中两个地址同名,会报错. 2.数据类型 int,long,double,boolean (有且只有两个值:True或者False),b

第二节 什么是多态

主讲人:王少华       QQ群号:483773664 一. 子类到父类的转换(向上转型) (一)  基本数据之间的类型转换 1. 自动进行类型转换 //将int型常量或变量的值赋给double型变量,可以自动进行类型转换 int i = 5; double dl = i; 2. 强制类型的转换 类型转换运算符是小括号,类型转换运算符的用法是 (type)variable //将double型常量或变量的值赋给int型变量,进行强制类型转换 double d2 = 3.14; int a =