zoukankan      html  css  js  c++  java
  • constructor VS object

    结构体与对象的联系与区别

    1.结构体是一种值类型,而类是引用类型。值类型用于存储数据的值,引用类型用于存储对实际数据的引用。

    那么结构体就是当成值来使用的,类则通过引用来对实际数据操作。

    2.结构使用栈存储(Stack Allocation),而类使用堆存储(Heap Allocation)

    栈的空间相对较小.但是存储在栈中的数据访问效率相对较高.

    堆的空间相对较大.但是存储在堆中的数据的访问效率相对较低.

    3.类是反映现实事物的一种抽象,而结构体的作用只是一种包含了具体不同类别数据的一种包装,结构体不具备类的继承多态特性

    4.结构体赋值是 直接赋值的值. 而对象的指针 赋值的是对象的地址

    如何选择结构还是类

    1. 堆栈的空间有限,对于大量的逻辑的对象,创建类要比创建结构好一些
    2. 结构表示如点、矩形和颜色这样的轻量对象,例如,如果声明一个含有 1000 个点对象的数组,则将为引用每个对象分配附加的内存。在此情况下,结构的成本较低。
    3. 在表现抽象和多级别的对象层次时,类是最好的选择
    4. 大多数情况下该类型只是一些数据时,结构时最佳的选择
    --------------------- 
    作者:转角遇到bug 
    来源:CSDN 
    原文:https://blog.csdn.net/qq_40280582/article/details/80739873 
    版权声明:本文为博主原创文章,转载请附上博文链接!

  • 相关阅读:
    [2019南昌邀请赛网络赛D][dp]
    [ Educational Codeforces Round 65 (Rated for Div. 2)][二分]
    [hdoj5927][dfs]
    [cf1140D. Minimum Triangulation][dp]
    [hdoj6483][莫队+线段树/ST]
    使用GAC加速 解决CSP问题 Kakuro
    UVA 11427 Expect the Expected
    UVA 11021 Tribles
    UVA 11174 Stand in a Line 树上计数
    《算法概论》第八章的一些课后题目 关于NP-Complete Problem
  • 原文地址:https://www.cnblogs.com/sky2737/p/10139875.html
Copyright © 2011-2022 走看看