1
Q:

c++ shared pointer operator bool

#include <iostream>
#include <memory>
 
void report(std::shared_ptr<int> ptr) {
    if (ptr) {
        std::cout << "*ptr=" << *ptr << "\n";
    } else {
        std::cout << "ptr is not a valid pointer.\n";
    }
}
 
int main() {
    std::shared_ptr<int> ptr;
    report(ptr);
 
    ptr = std::make_shared<int>(7);
    report(ptr);
}
//output:
//ptr is not a valid pointer.
//*ptr=7
0

New to Communities?

Join the community