में एक प्रकार का नाम नहीं है, मैंने अभी सी ++ में प्रोग्रामिंग शुरू की है, और मैंने 2 कक्षाएं बनाने की कोशिश की है जहां एक दूसरे को शामिल करेगा।कक्षा का नाम C++
फ़ाइल A.h
:
#ifndef _A_h
#define _A_h
class A{
public:
A(int id);
private:
int _id;
B _b; // HERE I GET A COMPILATION ERROR: B does not name a type
};
#endif
फ़ाइल A.cpp
:
#include "A.h"
#include "B.h"
#include <cstdio>
A::A(int id): _id(id), _b(){
printf("hello\n the id is: %d\n", _id);
}
फ़ाइल B.h
:
#ifndef _B_h
#define _B_h
class B{
public:
B();
};
#endif
फ़ाइल B.cpp
:
#include "B.h"
#include <cstdio>
B::B(){
printf("this is hello from B\n");
}
मैं पहली बार बी वर्ग एक वर्ग संकलन और उसके बाद, लेकिन फिर मैं त्रुटि संदेश मिलता है:
A.h:9: error: ‘B’ does not name a type
मैं इस समस्या को कैसे ठीक करूं?
@Georg आपने सब कुछ एक कोड सेगमेंट में क्यों रखा? वे अलग फाइलें हैं। –
@ एमीर: मैंने * संपादन * पर क्लिक करने से पहले इसे तोड़ दिया और मैं अनुपस्थित था :) –
आप जवाब के अलावा टिक मार्क पर क्लिक करके सबसे अधिक उपयोगी पाए गए उत्तरों में से एक को स्वीकार कर सकते हैं। यह उन लोगों के लिए सहायक होगा जो समान समस्याएं करेंगे। – Naveen