前处理条基截面定义 Struct TI_TiaoJiSect_D 数据项 类型 编码 默认值 截面编号 _T_KEY mNo 0 截面类型 _T_KEY mType 0 基础底面宽度 double mB 0 基础高度 double mH 0 基础底面挑出宽度 double mTCWidth 0 参考墙厚 double mWallTh1 0 第二墙厚 double mWallTh2 0 墙净距 double mWallRDis 0 基础相对墙体偏心 double mEcc 0 无砂浆缝时放脚宽 double mFeetWidth0 0 有砂浆缝时放脚宽 double mFeetWidth1 0 混凝土条基端部高-左端 double mEndH_L 0 混凝土条基端部高-左端 double mEndH_R 0 转换成c++结构体 并给出注释和初始化函数,构造函数,析构函数;构造调用初始化函数,拷贝构造函数,重载=号
时间: 2023-12-31 21:05:34 浏览: 75
linux创建线程之pthread_create的具体使用
5星 · 资源好评率100%
以下是将上述数据项转换成C++结构体的代码:
```cpp
struct TiTiaoJiSectD {
string mNo; // 截面编号
string mType; // 截面类型
double mB; // 基础底面宽度
double mH; // 基础高度
double mTCWidth; // 基础底面挑出宽度
double mWallTh1; // 参考墙厚
double mWallTh2; // 第二墙厚
double mWallRDis; // 墙净距
double mEcc; // 基础相对墙体偏心
double mFeetWidth0; // 无砂浆缝时放脚宽
double mFeetWidth1; // 有砂浆缝时放脚宽
double mEndH_L; // 混凝土条基端部高-左端
double mEndH_R; // 混凝土条基端部高-左端
// 初始化函数
void init() {
mNo = "";
mType = "";
mB = 0;
mH = 0;
mTCWidth = 0;
mWallTh1 = 0;
mWallTh2 = 0;
mWallRDis = 0;
mEcc = 0;
mFeetWidth0 = 0;
mFeetWidth1 = 0;
mEndH_L = 0;
mEndH_R = 0;
}
// 构造函数
TiTiaoJiSectD() {
init();
}
// 析构函数
~TiTiaoJiSectD() {}
// 拷贝构造函数
TiTiaoJiSectD(const TiTiaoJiSectD& other) {
mNo = other.mNo;
mType = other.mType;
mB = other.mB;
mH = other.mH;
mTCWidth = other.mTCWidth;
mWallTh1 = other.mWallTh1;
mWallTh2 = other.mWallTh2;
mWallRDis = other.mWallRDis;
mEcc = other.mEcc;
mFeetWidth0 = other.mFeetWidth0;
mFeetWidth1 = other.mFeetWidth1;
mEndH_L = other.mEndH_L;
mEndH_R = other.mEndH_R;
}
// 重载赋值运算符
TiTiaoJiSectD& operator=(const TiTiaoJiSectD& other) {
if (this == &other) {
return *this;
}
mNo = other.mNo;
mType = other.mType;
mB = other.mB;
mH = other.mH;
mTCWidth = other.mTCWidth;
mWallTh1 = other.mWallTh1;
mWallTh2 = other.mWallTh2;
mWallRDis = other.mWallRDis;
mEcc = other.mEcc;
mFeetWidth0 = other.mFeetWidth0;
mFeetWidth1 = other.mFeetWidth1;
mEndH_L = other.mEndH_L;
mEndH_R = other.mEndH_R;
return *this;
}
};
```
注:
- `TiTiaoJiSectD` 是结构体的名称,可以根据实际情况进行修改。
- `string` 是 C++ 标准库中的字符串类型,需要在头文件中包含 `<string>`。
- `init()` 函数用于初始化结构体中的所有成员变量。
- 构造函数和析构函数的实现为空,因为本结构体中没有动态分配的内存。
- 拷贝构造函数和重载赋值运算符的实现是将一个结构体对象的所有成员变量值赋给另一个结构体对象的所有成员变量。
阅读全文