1
Ao compilar com o MINGW gcc, o novo operador sobrecarregado não é chamado para std :: string
Este programa (compilado com a opção -std=c++17) #include <stdio.h> #include <string> void* operator new(std::size_t nrOfBytes) { printf("allocate %zd bytes on heap\n", nrOfBytes); void* p = malloc(nrOfBytes); if (p) { return p; } else { throw std::bad_alloc{}; } } int main() { // new operator is called when compiled with Clang …