3 ms·
In C++ you can do: struct Foo { private: int val = 0; Foo(int newVal) : val(newVal) {} public: static optional<Foo>
by maccard 9mo ago
In C++ you can do:
struct Foo
{
private:
int val = 0;
Foo(int newVal) : val(newVal) {}
public:
static optional<Foo> CreateFoo(int newVal)
{
if (newVal != SENTINEL_VALUE)
{
return Foo(newVal);
}
return {};
}
};
int main(int argc, char* argv[]) {
if (auto f = CreateFoo(argc)) {
cout << "Foo made with value " << f.val;
} else {
cout << "Foo not made";
}
}