C++ में "undefined reference/unresolved external symbol" त्रुटि: कारण और समाधान
सभी को नमस्ते! मैं C++ में नया हूँ और कई घंटों से एक त्रुटि से जूझ रहा हूँ जिसे मैं समझ नहीं पा रहा हूँ। कंपाइलर कुछ इस तरह का आउटपुट देता है:
```
undefined reference to `MyClass::myFunction()'
```
या
```
unresolved external symbol "public: void __thiscall MyClass::myFunction(void)" (?myFunction@MyClass@@QAEXXZ) referenced in function _main
```
यहाँ मेरा कोड है। मेरे पास तीन फाइलें हैं:
**main.cpp:**
```cpp
#include "myclass.h"
int main() {
MyClass obj;
obj.myFunction();
return 0;
}
```
**myclass.h:**
```cpp
#ifndef MYCLASS_H
#define MYCLASS_H
class MyClass {
public:
void myFunction();
};
#endif
```
**myclass.cpp:**
```cpp
#include "myclass.h"
#include
void MyClass::myFunction() {
std::cout << "Hello from myFunction!" << std::endl;
}
```
मैं Visual Studio में या g++ के साथ एक कमांड से कंपाइल कर रहा हूँ: `g++ main.cpp -o program`। यह इस त्रुटि के साथ क्रैश हो जाता है। मैंने जाँच लिया है कि फाइलें एक ही फोल्डर में हैं, हेडर फाइल सही तरीके से शामिल की गई है,