#include <iostream>
class XX
{
public:
XX() {
std::cout<<"C XX\n";
if (++instCount > 4) {
throw std::exception();
}
}
//private:
~XX() {
std::cout<<"~ XX\n";
instCount--;
}
private:
static int instCount;
};
int XX::instCount = 0;
int main() {
XX *xx=new XX[10]; // compile error (1)
return xx ? 0 : 1;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKY2xhc3MgWFgKewpwdWJsaWM6CiAgICBYWCgpIHsKICAgICAgICBzdGQ6OmNvdXQ8PCJDIFhYXG4iOwogICAgICAgIGlmICgrK2luc3RDb3VudCA+IDQpIHsKICAgICAgICAgICAgdGhyb3cgc3RkOjpleGNlcHRpb24oKTsKICAgICAgICB9CiAgICB9Ci8vcHJpdmF0ZToKICAgIH5YWCgpIHsKICAgICAgICBzdGQ6OmNvdXQ8PCJ+IFhYXG4iOwogICAgICAgIGluc3RDb3VudC0tOwogICAgfQogICAgCnByaXZhdGU6CiAgICBzdGF0aWMgaW50IGluc3RDb3VudDsKfTsKCmludCBYWDo6aW5zdENvdW50ID0gMDsKCmludCBtYWluKCkgewogICAgWFggKnh4PW5ldyBYWFsxMF07ICAgLy8gY29tcGlsZSBlcnJvciAoMSkKCiAgICByZXR1cm4geHggPyAwIDogMTsKfQo=