showtype[0x00]=true; showtype[0x01]=true; showtype[0x02]=false; showtype[0x03]=false; showtype[0x04]=false; showtype[0x05]=false; showtype[0x06]=false;简化代码
时间: 2023-11-30 10:02:52 浏览: 23
可以使用以下代码简化上述代码:
```
bool showtype[] = {true, true, false, false, false, false, false};
```
这样可以通过一个数组一次性初始化多个变量。数组的索引对应了之前使用的十六进制数(0x00、0x01等),而数组元素对应了之前使用的布尔值。
相关问题
column == 0的判断可以去掉
如果`column`的值总是为0或者只有在`column`为0时才需要进行赋值操作,那么的确可以去掉`column == 0`的判断。修改后的代码如下:
```
double temp = setText.toDouble();
if(showtype[row]) {
Uall[row] = setText.toInt(); // 将setText转换成int类型并赋值给Uall[row]
} else {
if(setText.contains("+") || setText.contains("-")) {
temp = qAbs(temp); // 取绝对值
if(setText.contains("-")) {
temp = -temp; // 取相反数
}
}
Uall[row] = temp * 1048576; // 将temp乘以1048576并转换成int类型,然后赋值给Uall[row]
}
```
这样修改后,程序仍然会对`setText`进行类型转换和赋值操作,但是不再需要判断`column`的值是否为0。
int row = index.rowint column = index.column(); showtype[row] = !showtype[row]; if (column == 0) { double value = showtype[row] ? Uall[row] : ((double) Uall[row] / 1048576); model1.item(row, 2)->setText(QString::number(value, 'g', 6)); }改错
感谢指出错误,以下是改过后的代码:
```
int row = index.row();
int column = index.column();
showtype[row] = !showtype[row];
if (column == 0) {
double value = showtype[row] ? Uall[row] : ((double) Uall[row] / 1048576);
model1->item(row, 2)->setText(QString::number(value, 'g', 6));
}
```
主要的改正包括:
- 修正了 `int row = index.rowint column = index.column();` 中的语法错误,将两个变量初始化语句分开。
- 修正了 `model1.item(row, 2)` 中的语法错误,将 `item()` 方法改为 `model1->item()`,因为 `model1` 是一个指针。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)