Конструктор класса не работает? - PullRequest
3 голосов
/ 05 октября 2011

Код:

В заголовочном файле класса:

 class Coconuts
{
public:
    Coconuts constructor();

};

В файле .cpp класса:

     #include "Coconuts.h"
     #include <iostream>
     #include <string>
     using namespace std;


Coconuts::constructor()
{
    cout << "\nYay coconuts are initialized";
};

В основном ():

 Coconuts Object1;

Моя программа работает без каких-либо ошибок, но конструктор не инициализируется и сообщение не отображается Предложения, кто-нибудь?

Ответы [ 2 ]

9 голосов
/ 05 октября 2011

Конструкторы не являются функциями с именем constructor. «Имя» конструктора - это имя самого класса. Обратите внимание, что конструкторы не являются обычными функциями и на них нельзя напрямую ссылаться по имени, поэтому я поставил «имя» в кавычках.

Ваш код должен быть следующим:

//.h
class Coconuts
{
public:
    Coconuts();
};

//.cpp
Coconuts::Coconuts()
{
    cout << "\nYay coconuts are initialized";
};
2 голосов
/ 05 октября 2011

Это не конструктор, конструктор - это просто имя класса: -

 class Coconuts 
 { 
 public:     
    Coconuts();  
 };

и

Coconuts::Coconuts()  
{      
    cout << "\nYay coconuts are initialized";  
};
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...