C++로 돌아 가려고하는데, 오랫동안 두 번째 프로그램입니다. cin >> stopat;
어디 까지나 일반적인 오류 인 것 같습니다 : error: no match for 'operator>>' in 'std::cin >> stopat'
나는이 문제의 원인을 설명하는 몇 가지를 살펴 봤지만 실제로는 이해할 수 없습니다 (프로그래밍에 대한 내 경험이 부족한 관계로 인해).). 이 오류의 원인은 무엇입니까? 그리고 오류가 다시 발생하는 경우 어떻게 해결합니까?오류 : 'std :: cin >> stopat'에서 'operator >>'와 일치하지 않습니다.
#include <iostream>
#include "BigInteger.hh"
using namespace std;
int main()
{
BigInteger A = 0;
BigInteger B = 1;
BigInteger C = 1;
BigInteger D = 1;
BigInteger stop = 1;
cout << "How Many steps? ";
BigInteger stopat = 0;
while (stop != stopat)
{
if (stopat == 0)
{
cin >> stopat;
cout << endl << "1" << endl;
}
D = C;
C = A + B;
cout << C << endl;
A = C;
B = D;
stop = stop + 1;
}
cin.get();
}
편집 : 어떻게 든, 나는 참조 된 라이브러리를 링크하는 것을 생각하지 않았다. 여기에 그들이있다 : https://mattmccutchen.net/bigint/
'BigInteger' 무엇인가
기본적으로, 당신이 필요한 것은 다음과 같습니다 함수는? '>> '연산자가없는 것처럼 보입니다. –
BigInteger 란 무엇입니까? 클래스의 이름이면 확실히 오버로드 된 연산자 >>가 없습니다. 'BigInteger' 클래스는 확실히 문자열로부터 숫자를 파싱하는 멤버 함수를 가지고 있기 때문에 (적어도 그것이 그러한 생성자를 제공한다면 이해할 수있을 것입니다) 불필요한 복사를 포함 할 수 있습니다 : – mikithskegg