C++ 'da başlık dosyaları ile programlama konusunda yeniyim.header dosyalarının C++ ile nasıl bağlanması 0 +
//a.h
#ifndef a_H
#define a_H
namespace hello
{
class A
{
int a;
public:
void setA(int x);
int getA();
};
}
#endif
//a.cpp
#include "a.h"
namespace hello
{
A::setA(int x)
{
a=x;
}
int A::getA()
{
return a;
}
}
//ex2.cpp
#include "a.h"
#include<iostream>
using namespace std;
namespace hello
{
A* a1;
}
using namespace hello;
int main()
{
a1=new A();
a1->setA(10);
cout<<a1->getA();
return 1;
}
Ben g++ ex2.cpp
ile derlemek deneyin, bu hatayı alıyorum: Bu benim şimdiki kodudur
In function `main':
ex2.cpp:(.text+0x33): undefined reference to `hello::A::setA(int)'
ex2.cpp:(.text+0x40): undefined reference to `hello::A::getA()'
collect2: ld returned 1 exit status
Neden çalışmıyor ve bunu nasıl düzeltebilirim?
kaynak kodunu kullanınız biçimlendirme özelliği, editördeki "101 010" simgesini tıklayın. – mikerobi
a.cpp dosyanızdaki 'A :: setA' önündeki 'void' değerini unutmuşsunuzdur. "Başlık dosyalarını bağlamazsınız" için –