Como ya se sabe, el método main() es el punto de entrada en cualquier programa en C++, por lo tanto, crear una clase llamada «main» es un desafío y generalmente no es posible. Pero este artículo explica cómo escribir una clase llamada «principal» en C++.
¿Qué sucede cuando tratamos de escribir una clase llamada main?
Generalmente no se permite escribir una clase llamada main en C++, ya que el compilador la confunde con el método main(). Por lo tanto, cuando escribimos la clase principal, la creación de su objeto generará un error, ya que no considerará el ‘principal’ como un nombre de clase.
Ejemplo:
// C++ program to declare // a class with name main #include <bits/stdc++.h> using namespace std; // Class named main class main { public: void print() { cout << "GFG"; } }; // Driver code int main() { // Creating an object of class main main obj; // Calling the print() method // of class main obj.print(); }
Producción:
Compilation Error in CPP code :- prog.cpp: In function 'int main()': prog.cpp:17:10: error: expected ';' before 'obj' main obj; ^ prog.cpp:18:5: error: 'obj' was not declared in this scope obj.print(); ^
¿Cómo crear con éxito una clase llamada principal?
Cuando el nombre de la clase es principal, es obligatorio usar la palabra clave class o struct para declarar objetos.
Ejemplo:
// C++ program to declare // a class with name main #include <bits/stdc++.h> using namespace std; // Class named main class main { public: void print() { cout << "GFG"; } }; // Driver code int main() { // Creating an object of class main // Add keyword class ahead of main class main obj; // Calling the print() method // of class main obj.print(); }
GFG
¿Cómo escribir un constructor o destructor llamado main?
Escribir un constructor o destructor llamado main no es un problema, ya que significa que el nombre de la clase debe ser main. Ya hemos discutido cómo hacer una clase llamada principal arriba.
Ejemplo:
// C++ program to declare // a class with name main #include <bits/stdc++.h> using namespace std; // Class named main class main { public: // Constructor main() { cout << "In constructor main()\n"; } // Destructor ~main() { cout << "In destructor main()"; } void print() { cout << "GFG\n"; } }; // Driver code int main() { // Creating an object of class main // Add keyword class ahead of main class main obj; // Calling the print() method // of class main obj.print(); }
In constructor main() GFG In destructor main()
Publicación traducida automáticamente
Artículo escrito por auspicious_boy y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA