常见问题积累
判断数组是否为空
- c++实现
//stl容器里面可以利用empty, count等方法去判断是否含有元素
std::vector<int> iVec;
if(iVec.count() <= 0 || iVec.empty()){
// 空容器
}
// 基本的内置类型数组 可以结合sizeof来判断。当然如果是数组的话,就不应该为空,int a[0]编译器会报错。
// 如果我们想判断数组内元素数量,可以如下判断。
int nArray[10];
memset(nArray, 0);
int nCount = sizeof(nArray) / sizeof(int[0]);
- php实现
//由于php数组是动态的,数组可以是空的
$array = array();
if(count($array) <=0 || sizeof($array) <= 0){
//空:sizeof 和 count是等价的 别名关系
}
if(empty($array)){
//空:
}
关于PHP的empty函数php-manual中这样解释:
一下情况empty均返回 true
- “” (空字符串)
- 0 (作为整数的0)
- 0.0 (作为浮点数的0)
- “0” (作为字符串的0)
- NULL
- FALSE
- array() (一个空数组)
- $var; (一个声明了,但是没有值的变量)