#include <string>
#include <vector>
#include <iostream>
typedef std::vector<bool> boolArray;
typedef std::vector<boolArray> boolArray2D;
typedef std::vector<boolArray2D> boolArray3D;
class airMap
{
public:
airMap( int, int, int,std::string);
boolArray3D& getArray() { return matrix3D; }
std::string name() const { return generatorName; }
private:
std::string generatorName;
boolArray3D matrix3D;
};
//Constructeurs et destructeurs
airMap::airMap(int x=0,int y=0,int z=0,std::string gen="EMPTY") :
matrix3D(x, boolArray2D(y, boolArray(z))), generatorName(gen)
{
}
using namespace std;
int main()
{
airMap a1(10,11,12,"abc");
airMap a2 = a1;
cout << a1.name() << " " << a1.getArray()[0][0][0] << "\n";
cout << a2.name() << " " << a2.getArray()[0][0][0] << "\n";
}
I2luY2x1ZGUgPHN0cmluZz4KI2luY2x1ZGUgPHZlY3Rvcj4KI2luY2x1ZGUgPGlvc3RyZWFtPgoKdHlwZWRlZiBzdGQ6OnZlY3Rvcjxib29sPiBib29sQXJyYXk7CnR5cGVkZWYgc3RkOjp2ZWN0b3I8Ym9vbEFycmF5PiBib29sQXJyYXkyRDsKdHlwZWRlZiBzdGQ6OnZlY3Rvcjxib29sQXJyYXkyRD4gYm9vbEFycmF5M0Q7CgpjbGFzcyBhaXJNYXAKewpwdWJsaWM6CiAgICBhaXJNYXAoIGludCwgaW50LCBpbnQsc3RkOjpzdHJpbmcpOwogICAgYm9vbEFycmF5M0QmIGdldEFycmF5KCkgeyByZXR1cm4gbWF0cml4M0Q7IH0KICAgIHN0ZDo6c3RyaW5nIG5hbWUoKSBjb25zdCB7IHJldHVybiBnZW5lcmF0b3JOYW1lOyB9Cgpwcml2YXRlOgogICAgc3RkOjpzdHJpbmcgZ2VuZXJhdG9yTmFtZTsKICAgIGJvb2xBcnJheTNEIG1hdHJpeDNEOwp9OwoKLy9Db25zdHJ1Y3RldXJzIGV0IGRlc3RydWN0ZXVycwphaXJNYXA6OmFpck1hcChpbnQgIHg9MCxpbnQgIHk9MCxpbnQgIHo9MCxzdGQ6OnN0cmluZyBnZW49IkVNUFRZIikgOgogIG1hdHJpeDNEKHgsIGJvb2xBcnJheTJEKHksIGJvb2xBcnJheSh6KSkpLCBnZW5lcmF0b3JOYW1lKGdlbikgCnsKfQoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmludCBtYWluKCkKewoJYWlyTWFwIGExKDEwLDExLDEyLCJhYmMiKTsKCWFpck1hcCBhMiA9IGExOwogICAgY291dCA8PCBhMS5uYW1lKCkgPDwgIiAiIDw8IGExLmdldEFycmF5KClbMF1bMF1bMF0gPDwgIlxuIjsKICAgIGNvdXQgPDwgYTIubmFtZSgpIDw8ICIgIiA8PCBhMi5nZXRBcnJheSgpWzBdWzBdWzBdIDw8ICJcbiI7Cn0=