Supongamos que tengo una claseconstructor con un parámetro de forma predeterminada
class C {
C(int a=10);
};
por eso si llamo
C c;
el contructor C(int =10)
se llama y si llamo
C c();
el constructor por defecto ¿se llama? ¿Cómo evitar esto? Quiero ejecutar solo mi constructor, traté de hacer el constructor predeterminado privado, pero no funciona.
¿Qué tal si nos proporciona un código compilable que nos muestre el comportamiento que cree que está viendo? Como puede ver en las respuestas hasta ahora, lo que usted describe no es lo que el código debería hacer. – sbi
Al igual que un FYI, MSVC (al menos desde VS2003) proporcionará una advertencia sobre este problema: 'advertencia C4930: 'C c (void)': función de prototipo no llamada (¿se pretendía una definición de variable?)' Conozco otros compiladores también lo hará, pero los que tengo fácilmente disponibles en este momento no lo hacen. –