所以我再次需要這個課程的一些幫助。也許它是我累了,但我似乎無法找到我確定在這裏做出的邏輯錯誤。這裏是我的代碼:錯誤:無法將參數1從std :: string轉換爲char *。困惑爲什麼它給了我這個錯誤。
#include "Book.h"
using namespace std;
void add (char*, char*, int);
void remove (int&);
void list();
int Count;
Book Bookshelf [4];
int main()
{
string In;
string N;
string A;
int Y;
int Num;
do
{
cout << "Bookshelf> ";
getline(cin, In);
if (In.compare("add") == 0)
{
cout << "Bookshelf> Enter book: ";
cin >> N >> A >> Y;
add (N,A,Y);
}
else if (In.compare ("remove") == 0)
{
cout << "Bookshelf> Select number: ";
cin >> Num;
remove (Num);
}
else if (In.compare("list") == 0)
{
list();
}
} while (cin != "quit");
return 0;
}
void add (string N, string A, int Y)
{
if (Bookshelf[4].IsEmpty() == false)
cout << "Error!" << endl;
else
{
Bookshelf[Count] = Book (N,A,Y);
Count++;
}
cout << "Bookshelf> ";
}
在該行add(N,A,Y);
出現的錯誤,但對我的生活我不知道爲什麼它說。他們都看起來像std ::字符串給我。任何人都可以向我解釋這個嗎?
啊謝謝。我不能相信我錯過了這一點。顯示等到最後一分鐘完成的情況。 – triple07 2012-02-11 05:08:22