类型装换问题

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
    class A
    {

    }
    class B:A
    {

    }
    class Program
    {
        static void Main(string[] args)
        {
            B objb = new B();
            A obja = objb;//隐式转换为A类型
            //B objb1 = obja;//有错误必须强制转换
            B objb1 =(B)obja;//该转换是允许的,因为数据类型是B类型的!
            Console.ReadLine();

        }
    }
}
class Program
    {
        static void Main(string[] args)
        {
            A obja = new A();
            B objb = new B();
            //objb =(B)obja;//不能转换,是错误的
           Console.ReadLine();

        }
    }
时间: 2024-10-24 02:10:14

类型装换问题的相关文章

原生函数和强制类型装换

var a = new String("abc"); console.log(typeof a); //是Object,而不是string 使用new String("abc"); 创建的是字符串 abc 的封装对象,而不是基本类型值"abc". 封装对象 由于基本类型值没有.length和.toString()这样的属性和方法,需要通过封装对象才能访问,此时JavaScript会自动为基本类型值包装一个封装对象,如: var a = "

object和其他类型装换的问题

using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { class A { public int a = 2; public void f(object obj) { Console.WriteLine("{0}", obj);//这儿不需要强制转换的 Console.WriteLine("{0}&

C++中四种类型装换

1.类型转换   static_cast<>():静态类型转换,编译时C++编译器会做类型检查,在C语言中,隐式类型转换的地方,均可以使用static_cast<>()进行类型转换:   reinterpret_cast<>():强制类型转换;编译器重新解释:   dynamic_cast<Cat *>(base):父类对象===>子类对象,向下转型,一般用在继承中:   const_cast<>():const char *--->

DataSet装换为泛型集合 222

#region DataSet装换为泛型集合 /// <summary> /// 利用反射和泛型 /// </summary> /// <param name="dt"></param> /// <returns></returns> public static List<T> ConvertToList<T>(DataTable dt) { // 定义集合 List<T> ts

c#中时间戳和日期的相互装换

时间戳转换为日期: /// <summary> /// 将时间戳转换为datetime类型 /// </summary> /// <param name="yn"></param> /// <returns></returns> public DateTime GetTime(int now) { string timeStamp = now.ToString(); DateTime dtStart = TimeZ

装换器

装换器: 有时须要给 URL 添加一定规则,进行限制路由的形式. 规则可以用 <converter:variable_name> 指定一个可选的转换器  ,参数1:转换器类型,  参数2 :传过来的变量 1  Flask自带的转换器 DEFAULT_CONVERTERS = { 'default': UnicodeConverter,(字符串与2同) 'string': UnicodeConverter, 'any': AnyConverter, 匹配any中存在的地址 'path': Pat

opencv之深拷贝及浅拷贝,IplImage装换为Mat

一.(1)  浅拷贝: Mat B; B = image  // 第一种方式 Mat C(image); // 第二种方式 这两种方式称为浅copy,是由于它们有不同的矩阵头,但是它们共享内存空间,即指向一个矩阵.当图像矩阵发生变化时,两者相关联,都会变化. (2)深拷贝 Mat B,C; B = image.clone();       // 第一种方式 image.copyTo(C); // 第二种方式 深拷贝是真正的copy了一个新的图像矩阵,此时image,B,C三者相互没有影响. 二.

oracle中的装换函数

日期装换成字符的函数:TO_CHAR(date[,fmt[,params]]) 默认格式:DD-MON-RR 参数说明: date:将要装换的日期 fmt:装换的格式 params:日期的语言(可以不写)例子: SQL> select to_char(sysdate,'YYYY-MM-DD HH24:MI:SS') from dual; TO_CHAR(SYSDATE,'YY ------------------- 2016-04-21 07:55:54 字符型转换成日期的函数: TO_DATE

Conversion of feet/inches to meters-英尺、英里装换为米

Conversion of feet/inches to meters-英尺.英里装换为米,允许重复计算: //Conversion of feet/inches to meters-英尺.英里装换为米,允许重复计算 #include<iostream> #include<cmath> using namespace std; void get_input(double& feet,double& inch); double convert(double&