Outils pour utilisateurs

Outils du site


lang:cpp:optional

Ceci est une ancienne révision du document !


{} ou std::nullopt

C'est la même chose.

#include <cassert>
#include <optional>
 
struct Version {
  Version() {}
  uint32_t major = 0;
  uint32_t minor = 0;
  uint32_t patch = 0;
};
 
int main() {
  std::optional<int> o1 = {};
  std::optional<int> o2 = 1;
  std::optional<Version> o3 = {};
  std::optional<Version> o4 = {{}};
 
  assert(!o1);
  assert(o2);
  assert(!o3);
  assert(o4);
}

std::optional - construct empty with {} or std::nullopt? Archive du 16/09/2019 le 01/02/2023

lang/cpp/optional.1675249286.txt.gz · Dernière modification : 2023/02/01 12:01 de root