Итак, я это пример кода. Я только начал использовать Visual C++ 2010 Express Edition, и я продолжаю получать эту ошибку вместе с другими, но это меня очень беспокоит.C2146: синтаксис: отсутствует ')' перед идентификатором '
Программа 9.cpp (15): ошибка C2146: синтаксическая ошибка: отсутствует ')' перед идентификатором 's'
Вот мой код:
#include <iostream>
#include <conio.h>
#include <string>
#include <string.h>
using namespace std;
class Salesman
{
char name[26];
float total_sales;
public:
Salesman (char *s, float f)
{
strcpy(name s); //Error occurs here. :(
total_sales=f;
}
void prnobject (void)
{
cout<<this->name;
cout<<"\tHas invoked probject: \n";
}
};
void main()
{
clrscr();
salesman Raman ("Raman", 21450), Sita ("Sita", 23190), Vedant ("Vedant", 19142);
Raman.prnobject();
Sita.prnobject();
Vedant.prnobject();
getch();
}
'strcpy (name, s);' –
Ваш конструктор должен также bem Salesman (const char * s, float f) для корректности, так как вы не хотите изменять параметр входной строки, и вы должны, вероятно, проверить переполнение копии (имя ограничено 25 символами + nul terminator) или используйте std :: string вместо этого и удалите все эти головные боли. – David
Ehm, @ BoltClock ♦, вы только что отредактировали этот вопрос, чтобы прочитать «Так что это пример кода»? –