• !struct operator reload


    struct t3DObject //对象信息结构体
    {
    int numOfVerts; // 模型中顶点的数目
    int numOfFaces; // 模型中面的数目
    int numTexVertex; // 模型中纹理坐标的数目
    int materialID; // 纹理ID
    bool bHasTexture; // 是否具有纹理映射
    bool bVisible;//对象是否可见,默认是可见
    char strName[255]; // 对象的名称
    FPoint3 *pVerts; // 对象的顶点
    FPoint3 *pNormals; // 顶点的法向量
    FPoint2 *pTexVerts; // 纹理UV坐标
    tFace *pFaces; // 对象的面信息
    FPoint3 *pFaceNormals; // 面的法线

    // 为t3DObject运算符重载
    t3DObject& operator=(t3DObject& value)
    {
    numOfVerts = value.numOfVerts; // 模型中顶点的数目
    numOfFaces = value.numOfFaces; // 模型中面的数目
    numTexVertex = value.numTexVertex; // 模型中纹理坐标的数目
    materialID = value.materialID; // 纹理ID
    bHasTexture = value.bHasTexture; // 是否具有纹理映射
    bVisible = value.bVisible;//对象是否可见,默认是可见
    //char strName[255]; // 对象的名称
    pVerts = value.pVerts; // 对象的顶点
    pNormals = value.pNormals; // 顶点的法向量
    pTexVerts = value.pTexVerts; // 纹理UV坐标
    pFaces = value.pFaces; // 对象的面信息
    pFaceNormals = value.pFaceNormals; // 面的法线

    return *this;
    }
    };

    当结构体包含结构体的时候,赋值很复杂,而且容易出现各种问题,所以这个时候最好使用指针传递。

  • 相关阅读:
    厂商前缀
    文本阴影和边框阴影
    2D转换
    overflow属性
    margin属性
    CSS圆角边框
    浮动定位
    文档流定位
    position属性
    选择器二
  • 原文地址:https://www.cnblogs.com/qingsunny/p/4331707.html
Copyright © 2020-2023  润新知