g++判断指针是否为空
时间: 2023-11-23 07:52:42 浏览: 29
可以使用以下方式判断指针是否为空:
```c++
if (ptr == nullptr) {
// 指针为空
}
```
或者
```c++
if (!ptr) {
// 指针为空
}
```
其中,`nullptr` 是 C++11 引入的空指针常量,可以代替 `NULL`。
相关问题
qt如何判断指针是否为空
在 Qt 中,可以使用以下方式判断指针是否为空:
1. 使用if语句判断指针是否为nullptr:
```c++
if (pointer == nullptr) {
// 指针为空
}
```
2. 使用Q_NULLPTR宏判断指针是否为nullptr:
```c++
if (pointer == Q_NULLPTR) {
// 指针为空
}
```
3. 使用Qt提供的isNull()函数判断指针是否为nullptr:
```c++
if (pointer.isNull()) {
// 指针为空
}
```
其中,第三种方式只适用于Qt提供的一些类,如QSharedPointer、QWeakPointer等。
c++ 判断智能指针是否为空
在 C++ 中,可以使用智能指针的 bool 转换操作符或者成员函数 `get()` 来判断智能指针是否为空。
1. 使用 bool 转换操作符:
```cpp
std::shared_ptr<int> ptr;
if (ptr) {
// 智能指针不为空
} else {
// 智能指针为空
}
```
2. 使用成员函数 `get()`:
```cpp
std::shared_ptr<int> ptr;
if (ptr.get() != nullptr) {
// 智能指针不为空
} else {
// 智能指针为空
}
```
这两种方法都可以用来判断智能指针是否为空,具体使用哪种方法取决于个人偏好。