#include <iostream>
#include <cstdlib> // Pour malloc et free
class PortalPanic {
public:
struct wall {
int xCord;
int yCord;
int width;
// Supposons que nous n'utilisons pas de couleur ou de forme ici pour simplifier
};
wall* createWall(int x, int y, int width) {
// Allocation de mémoire pour un nouveau mur
wall* newWall = (wall*)malloc(sizeof(wall));
if (newWall == nullptr) {
std::cerr << "Erreur d'allocation de mémoire pour wall." << std::endl;
return nullptr; // Gestion de l'erreur
}
// Initialisation des membres de la structure
newWall->xCord = x;
newWall->yCord = y;
newWall->width = width;
return newWall; // Retourne le pointeur vers le nouveau mur
}
void destroyWall(wall* w) {
if (w != nullptr) {
free(w); // Libération de la mémoire
}
}
};
int main() {
PortalPanic game;
PortalPanic::wall* myWall = game.createWall(10, 20, 30);
if (myWall != nullptr) {
std::cout << "Mur créé avec succès : "
<< "xCord = " << myWall->xCord
<< ", yCord = " << myWall->yCord
<< ", width = " << myWall->width << std::endl;
// Libération de la mémoire
game.destroyWall(myWall);
}
return 0;
}