如何做size_t乘法

时间:2014-02-18 15:20:16

标签: c++ c

size_t size, reshape_size;
size = somemethod()
for (size_t index = 0; index < *dim; ++index)
        reshape_size = reshape_size*shape[index];
if (reshape_size == size){
...

我收到错误

error: invalid type argument of unary ‘*’ (have ‘size_t {aka long unsigned int}’)

那么如何进行乘法?之后我必须比较两个size_t。

1 个答案:

答案 0 :(得分:8)

问题不是乘法,而是取消引用dimdim是指针吗? 即可。什么是index < *dim应该是什么意思?

另外,我认为你(错误地)假设size_t size, reshape_size;将被初始化为某种东西。由于reshape_size = reshape_size*shape[index];未定义,因为reshape_size未初始化。