我目前正在使用 has_storage()
方法来检查张量是否为空,但我想知道是否有更好的方法!另外,除了已初始化的 torch::Tensor
始终具有存储空间而空张量则没有之外,是否还涉及其他任何影响!
.numel()
方法,该方法返回一个张量所包含元素的数量。numel()
defined()
然后使用 numel()
附注:
空张量(例如使用 torch::Tensor t;
创建的张量)在使用 .numel()
时会返回零,而其大小/尺寸将导致异常。
这是一种完美的检查方法,用于处理返回空张量(上述意义中的空张量)的情况。可以简单地执行以下操作:
if (!tensor.numel())
{
std::cout<<"tensor is empty!" << std::endl;
// do other checks you wish to do
}