में घोषित कोई '__________' सदस्य फ़ंक्शन मैं खुद को एक नौसिखिया सी ++ प्रोग्रामर के रूप में मानता हूं और मैंने पहले कभी इस त्रुटि का अनुभव नहीं किया है।त्रुटि: कक्षा '_______'
मैं बस :: मेरी समारोह के लिए, लेकिन मेरी सभी एसटीडी एक वर्ग बनाने के लिए पहले से जुड़ा हुआ कार्यों मेरी हेडर फाइल में घोषित कोशिश कर रहा हूँ मान्यता प्राप्त नहीं किया जा रहा है
//comments
//comments
//comments
//comments
//comments
//comments
//comments
//comments
//comments
//comments
//comments
#ifndef PERSON_H
#define PERSON_H
#include <string>
class Person
{
public:
Person();
std::string getName(); //return first name
std::string getSurname();//return surname
int getWeight(); //return weight
int getBirthYear(); //return birthyear
private:
//self explanatory member variables but need to be accessible to patient
std::string m_name;
std::string m_surname;
int m_weight;
int m_birthYear;
};
#endif
सीपीपी
//comments
//comments
//comments
//comments
//comments
//comments
//comments
//comments
//comments
//comments
//comments
#include "Person.h"
Person::Person()
{
m_name = "name";
m_surname = "surname";
m_weight = 0;
m_birthYear = 0;
return;
}
//returns m_name
std::string Person::getName()
{
return m_name;
}
//returns m_surname
std::string Person::getSurname()
{
return m_surname;
}
//returns persnon's weight
int Person::getWeight()
{
return m_weight;
}
//returns the person's birth year
int Person::getBirthYear()
{
return m_birthYear;
}
मुख्य
//comments
//comments
//comments
//comments
//comments
//comments
//comments
//comments
//comments
//comments
//comments
#include "Person.h"
#include <iostream>
using namespace std;
int main()
{
// Person matt;
// cout << matt.getName() << endl;
// cout << matt.getSurname() << endl;
// cout << matt.getWeight() << endl;
// cout << matt.getBirthYear() << endl;
return 0;
}
और इस त्रुटि मैं
प्राप्त कर रहा हूँ हैg++ Main.cpp Person.h Person.cpp -o test
Person.cpp: In constructor ‘Person::Person()’:
Person.cpp:17:2: error: ‘m_name’ was not declared in this scope
Person.cpp:18:2: error: ‘m_surname’ was not declared in this scope
Person.cpp: At global scope:
Person.cpp:35:29: error: no ‘std::string Person::getName()’ member function declared in class ‘Person’
Person.cpp:41:32: error: no ‘std::string Person::getSurname()’ member function declared in class ‘Person’
कोई विचार क्या मैं गलत कर रहा हूं? यह सटीक वही std :: स्वरूपण पहले मेरे लिए काम करता है लेकिन कुछ कारणों से अब केवल एक साधारण व्यक्ति वर्ग बनाने की कोशिश करते समय केवल std :: स्ट्रिंग फ़ंक्शंस को पहचाना नहीं जाता है।
आपके बिल्ड कमांड में हेडर क्या कर रहा है? और कन्स्ट्रक्टर प्रारंभकर्ता सूचियों के खिलाफ लोगों के पास क्या है? – chris
दुर्भाग्यवश यह एकमात्र तरीका है जिसे मुझे प्रोग्राम करने के लिए सिखाया गया है और यह मेरे ट्यूटर्स/मार्करों द्वारा पसंदीदा है क्योंकि उनके लिए –
स्किम करना आसान है, ठीक है आपके शिक्षक इस बारे में गलत हैं। अपने पैसे वापस पूछो। – juanchopanza