我需要从内存中读取数据,如果每次都可以使用不同的类型,并且在比较其他两个变量时我知道所需的类型。 条件结束后,除了一个分配以外,存在几乎相同的循环。
如果我在条件中定义变量,则不能超出范围使用它。 我试图避免重复代码。 (代码示例比我使用的示例短)
if (size == x) {
auto data = reinterpret_cast<int *>(in->GetData());
} else {
auto data = reinterpret_cast<float *>(in->GetData());
}
for (int i = 0; i < batch; i++) {
idx = rand()%total_size;
int n = rand()%c;
if (size == x) {
labels[i] = n;
} else {
labels[i * c + n] = 1;
}
}
是否可以使用C ++类型或类型转换?
谢谢。