首页 > 试题广场 >

有关结构体和类的说法不正确的是( )?

[单选题]

有关结构体和类的说法不正确的是( )?

  • 结构体直接继承于System.ValueType
  • 结构体不可以声明构造函数
  • 结构是值类型的,而类是引用类型的
  • 结构体可以继承接口
结构体没有默认构造函数,但可以声明构造函数,结构体是值类型System.ValueType
发表于 2017-09-12 02:39:19 回复(4)
结构体和类很像 区别: 1.结构体对象给函数使用时,只是作为一个值传递,而类属于引用。 2.结构体的对象使用new运算符创建,也可以直接创建单个元素赋值(obj2)这是与类不同的因为类只能使用new创建对象
发表于 2017-11-03 22:19:31 回复(0)
想了半天,还是没想到结构体是啥。一看答案是c#,我输了
发表于 2017-08-19 11:29:31 回复(1)
重复下java中没有结构体 这是C/C++中的内容 ,搜索了各大资料 java中的结构一般指类
发表于 2017-08-17 20:35:09 回复(1)
C# 中的结构有以下特点: 结构可带有方法、字段、索引、属性、运算符方法和事件。 结构可定义构造函数,但不能定义析构函数。但是,您不能为结构定义无参构造函数。无参构造函数(默认)是自动定义的,且不能被改变。 与类不同,结构不能继承其他的结构或类。 结构不能作为其他结构或类的基础结构。 结构可实现一个或多个接口。 结构成员不能指定为 abstract、virtual 或 protected。 当您使用 New 操作符创建一个结构对象时,会调用适当的构造函数来创建结构。与类不同,结构可以不使用 New 操作符即可被实例化。 如果不使用 New 操作符,只有在所有的字段都被初始化之后,字段才被赋值,对象才被使用
发表于 2020-10-19 23:12:50 回复(0)
  • 结构可带有方法、字段、索引、属性、运算符方法和事件。
  • 结构可定义构造函数,但不能定义析构函数。但是,您不能为结构定义默认的构造函数。默认的构造函数是自动定义的,且不能被改变。
  • 与类不同,结构不能继承其他的结构或类。
  • 结构不能作为其他结构或类的基础结构。
  • 结构可实现一个或多个接口。
  • 结构成员不能指定为 abstract、virtual 或 protected。
  • 当您使用 New 操作符创建一个结构对象时,会调用适当的构造函数来创建结构。与类不同,结构可以不使用 New 操作符即可被实例化。
  • 如果不使用 New 操作符,只有在所有的字段都被初始化之后,字段才被赋值,对象才被使用。
    • 类是引用类型,结构是值类型。
    • 结构不支持继承。
    • 结构不能声明默认的构造函数。

发表于 2018-05-03 16:45:14 回复(0)
结构类型(“structure type”或“struct type”)是一种可封装数据和相关功能的值类型 
结构的成员由其 struct_member_declaration 引入的成员和从该类型继承的成员组成 System.ValueType 。
结构体可以声明构造函数,但是不能声明无参构造函数。

interface IStructInterface1 {
        int Sum();
    }
    public struct Struct1: IStructInterface1
    {
        int _x;
        int _y;

        // error CS0568: 结构不能包含显式的无参数构造函数
        //public Struct1();

        public Struct1(int x, int y)
        {
            _x = x;
            _y = y;
        }

        public int Sum()
        {
            return _x + _y;
        }
    }

    public class StructTest1
    {
        public static void Run()
        {
            var st1 = new Struct1(1, 2);
            System.Console.WriteLine(st1.Sum());
        }
    }



发表于 2021-03-28 15:11:32 回复(0)
b应该写成不能定义默认构造函数,c#结构体是可以定义带参数的构造函数的
发表于 2021-01-30 19:51:05 回复(0)

结构体派生自ValueType,ValueType派生自Object,可访问Object的方法。
结构体是一种缩小版的类。
结构体不能继承。
结构体总是有一个无参数的默认构造函数,不允许替换。
结构体可指定字段如何在内存中布局。

结构体在很多方面和类相同。
但有些与类不同,结构的实例化可以不使用 new 运算符,类不行。
结构可以声明构造函数,但它们必须带参数,不能重写默认的构造函数。
更重要的是它不能继承。

发表于 2020-03-28 10:52:44 回复(0)
结构体是值类型,接口是引用类型。
发表于 2019-05-11 09:54:41 回复(0)
  • 结构可定义构造函数,但不能定义析构函数。但是,您不能为结构定义默认的构造函数。默认的构造函数是自动定义的,且不能被改变。
发表于 2018-12-13 11:30:54 回复(0)
要求答"不正确的"
发表于 2018-07-31 21:08:14 回复(0)
结构体有构造函数
发表于 2018-07-13 00:14:00 回复(0)

结构体没有默认构造函数,但能创建函数

发表于 2018-06-27 23:40:59 回复(0)
结构体是值类型,可以声明无参构造函数
发表于 2018-04-04 17:46:02 回复(0)
c#中结构体隐式继承自System.VauleType,可以显式继承接口。 不可以显式定义无参构造函数,可以定义多个含参构造函数,且构造函数中必须给每一个成员变量初始化。
发表于 2017-12-15 22:26:13 回复(0)
结构不支持继承啊,为什么a是对的
发表于 2017-10-17 17:33:58 回复(2)
结构体是C++的 鈤
发表于 2017-08-16 08:58:50 回复(0)