Phone.h
이라는 헤더 파일 안에 클래스를 만들었습니다. Phone.h
에서 함수를 정의한 PhoneC.cpp
이 있고 그 다음으로는 int main.cpp
이 있는데, 이는 int 메인을 선언하는 곳입니다. 내가C++ 헤더 파일 및 CPP 파일
one or more multiply defined symbols found
의 오류를 얻고 있지만 나는 이것이 무엇을 의미하는지 너무 확실하지 않다이나 다른 포스트는 수정 노골적으로 충분히 무엇인지에 대해 설명했다.
Phone.h
#ifndef PHONE_IMEI_API
#define PHONE_IMEI_API
#include <string>
class Phone {
public:
bool checkIMEI(std::string IMEI);
void sort();
std::string data[5] = {};
} Phone;
#endif
PhoneC.cpp는
#include "Phone.h";
bool Phone::checkIMEI(std::string IMEI)
{
int IMEIlength = 15;
int len, i, mul, sum, m10;
len = IMEI.length();
char chksum = IMEI[len];
i = 0;
if (len != IMEIlength)
return false;
mul = 2; sum = 0;
for (i = len - 2; i >= 0; i--)
{
int currentNumber = static_cast<int>(IMEI[len]);
if (currentNumber * mul >= 10)
sum += ((currentNumber * mul)/10) + ((currentNumber * mul) % 10);
else
sum += currentNumber * mul;
if (mul == 2)
mul = 1;
else
mul = 2;
}
m10 = sum % 10;
if (m10)
m10 = 10 - m10;
if (m10 == chksum)
return true;
else
return false;
}
MAIN.CPP는
#include <iostream>
#include <iomanip>
#include "Phone.h"
using namespace std;
int main(){
string imei;
cout << "Please enter an IMEI" << endl;
cin >> imei;
if (Phone.checkIMEI(imei))
{
cout << "Hello World";
}
return 0;
}
내가 WRO했던 무엇인지 확실하지 않기 ng 나는 아직도 this official documentation에서 문서를 따라 가려고 노력했다. 어떤 명백한 제안을 주셔서 감사합니다. C++의 수업으로 끝나지 않았습니다.
phone.H,'class Phone {...} 전화; '는 새로운 C++입니다. 제가 familliar가 아닙니다. – John3136
http://www.cplusplus.com/doc/tutorial/classes/ 내가 그 위치에서 얻은 것입니다. 두 번째 결정은 개체 이름입니다. 그래서 나는 Phone to Cell을 바꿀 수 있었고 Cell.checkIMEI (imei)를 바꿀 수있었습니다. 적어도 이것은 내가 바보처럼 때리는 것을 잘못 읽었을 때 읽은 것입니다. – EasyBB
Havent는 자신을 테스트하기 위해 코드를 실행하지만, "somehwat"셀에 두 번째 전화를 변경하면 문제가 해결 될 수 있습니다. 컴파일러는 아마 거기에 같은 이름을 가진 두 가지 일을함으로써 혼란 스러울 것입니다. – Jason