At the Albuquerque meeting P0814
"hash_combine()
Again" was discussed and accepted for further
work by LEWG. Unfortunately, this proposal throws out multiple
improvements on hashing supportapproach and disregards a substantial
amount of work leading to superior hashing support. This proposal
is an attempt to bring the various bits together to avoid accepting
an inferior approach into the standard C++ library.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// examples/client.cpp -*-C++-*- | |
// ---------------------------------------------------------------------------- | |
// | |
// Copyright (c) 2024 Dietmar Kuehl http://www.dietmar-kuehl.de | |
// | |
// Licensed under the Apache License Version 2.0 with LLVM Exceptions | |
// (the "License"); you may not use this file except in compliance with | |
// the License. You may obtain a copy of the License at | |
// | |
// https://llvm.org/LICENSE.txt |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
CXXFLAGS = -W -Wall -std=c++20 -fsanitize=address | |
default: coro | |
./coro |
The use of exceptions isn't a viable error handling approach in all cases and returning codes for error handling is sometimes preferable. However, using integral types for error identification is problematic as there is no good mechanism to guarantee that each value uniquely
- graph:
G = (V, E)
V
= vertices, nodesE
= edges, i.e., pairs(n, m)
of nodes; [directed] links between nodes
- node
n
is adjacent to nodem
if there is an edge(n, m)
or(m, n)
- generally there are multiple nodes adjacent to a node
n
- generally there are multiple nodes adjacent to a node
- for a node it is possible to get iterators for the adjacent nodes
This page describes what should be considered when creating a value type. It provides a quick checklist which can be used as a reminder of the various considerations. It also contains an explanation of the why the various consideration are important and possible implementatation strategies.
There are many places where allocators are mentioned. The allocators mention on this page are generally refering to the base class