Форум программистов, компьютерный форум CyberForum.ru

error C2061: синтаксическая ошибка: идентификатор - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 45, средняя оценка - 4.67
koren
0 / 0 / 0
Регистрация: 17.01.2011
Сообщений: 8
18.01.2011, 22:16     error C2061: синтаксическая ошибка: идентификатор #1
Вот такая ошибка:
error C2061: синтаксическая ошибка: идентификатор
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
using namespace std;
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//CASSES
class golf
{
public:
    golf();
    golf(sttest &test, const char *name, int hc);//<- вот сюда указывает
    int setgolf(sttest &test);
    void setgolf(sttest &test, int hc);
    void showgolf(const sttest &test);
};
 
    golf::golf()
{
}
    golf::golf(sttest &test, const char *name, int hc)
{
        int len;
        len = strlen(name);
        test.b = hc;    
        for (int i=len, j=0; i>0; j++, i--)
        {
            test.mass1[j] = name[j];
        }
};
    int golf::setgolf(sttest &test)
    {
        cout << "Enter name\n";
        cin >> test.mass1;
        int len = strlen(test.mass1);
        int a;
        if(len=0)
            {a = 0;
            return a;}
        a = 1;
        cout << "Enter handicap\n";
        cin >> test.b;
        return a;
    }
    void golf::setgolf(sttest &test, int hc);
    {
        test.b = hc
    }
 
    void golf::showgolf(const sttest &test)
    {
        int len = strlen(test.mass1);
        for(int i=len, j=0; i>0; i--, j++)
            {
            cout << test.mass1[j];
            }
        cout << "\n";
        cout << test.b << "\n";
    }
 
const int len = 50;
 
    struct sttest
    {
        char mass1[len];
        double b;
    };
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
rdksoft
 Аватар для rdksoft
22 / 22 / 2
Регистрация: 24.12.2008
Сообщений: 81
18.01.2011, 22:30     error C2061: синтаксическая ошибка: идентификатор #2
банально структуру перед классном напишите всё заработает
koren
0 / 0 / 0
Регистрация: 17.01.2011
Сообщений: 8
19.01.2011, 00:25  [ТС]     error C2061: синтаксическая ошибка: идентификатор #3
вот еще что пишет
первый файл:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// class1.cpp : Defines the entry point for the console application.
 
#include <stdafx.h>
#include <iostream>
#include "incl.h"
 
using namespace std;
 
int main()
    {   
        char mass2[50];
        int handy;
        sttest sttest1;
        golf golf1;
        golf1.setgolf(sttest1, mass2, handy); //вот сюда указывает(хотя она есть
        golf1.showgolf(sttest1);
        if(golf.setgolf(sttest1));
        golf1.showgolf(sttest1);
        cout << "Empty name" << "\n";
        return 0;
    }
второй файл
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
using namespace std;
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//CASSES
const int len = 50;
    struct sttest
    {
        char mass1[len];
        double b;
    };
class golf
{
public:
    golf();
    golf(sttest &test, const char *name, int hc);
    int setgolf(sttest &test);
    void setgolf(sttest &test, int hc);
    void showgolf(const sttest &test);
};
 
    golf::golf()
{
}
    golf::golf(sttest &test, const char *name, int hc)
{
        int len;
        len = strlen(name);
        test.b = hc;    
        for (int i=len, j=0; i>0; j++, i--)
        {
            test.mass1[j] = name[j];
        }
};
    int golf::setgolf(sttest &test)
    {
        cout << "Enter name\n";
        cin >> test.mass1;
        int len = strlen(test.mass1);
        int a;
        if(len=0)
            {a = 0;
            return a;}
        a = 1;
        cout << "Enter handicap\n";
        cin >> test.b;
        return a;
    }
    void golf::setgolf(sttest &test, int hc)
    {
        test.b = hc;
    }
 
    void golf::showgolf(const sttest &test)
    {
        int len = strlen(test.mass1);
        for(int i=len, j=0; i>0; i--, j++)
            {
            cout << test.mass1[j];
            }
        cout << "\n";
        cout << test.b << "\n";
    }
Пишет вот что
1>------ Построение начато: проект: sample, Конфигурация: Debug Win32 ------
1>Компиляция...
1>sample.cpp
1>c:\documents and settings\xa\мои документы\visual studio 2008\projects\sample\sample\sample.cpp(15) : error C2661: golf::setgolf: нет перегруженной функции, принимающей 3 аргументов
1>c:\documents and settings\xa\мои документы\visual studio 2008\projects\sample\sample\sample.cpp(18) : warning C4390: ";": обнаружен пустой контролируемый оператор; это правильно?
1>Журнал построения был сохранен в "file://c:\Documents and Settings\xa\Мои документы\Visual Studio 2008\Projects\sample\sample\Debug\BuildLog.htm"
1>sample - ошибок 1, предупреждений 1
========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========
x1Mike7x
 Аватар для x1Mike7x
214 / 127 / 6
Регистрация: 06.11.2010
Сообщений: 234
19.01.2011, 01:06     error C2061: синтаксическая ошибка: идентификатор #4
Код
1) 1>c:\documents and settings\xa\мои документы\visual studio 2008\projects\sample\sample\sample.cpp(15) : error C2661: golf::setgolf: нет перегруженной функции, принимающей 3 аргументов
2) 1>c:\documents and settings\xa\мои документы\visual studio 2008\projects\sample\sample\sample.cpp(18) : warning C4390: ";": обнаружен пустой контролируемый оператор; это правильно?
1) Вы уверены, что есть эта функция с тремя аргументами? Я её не вижу - есть конструктор с тремя параметрами, но это как бы не оно... =)
2) После if'а ";" не ставится в первом файле.
koren
0 / 0 / 0
Регистрация: 17.01.2011
Сообщений: 8
19.01.2011, 01:43  [ТС]     error C2061: синтаксическая ошибка: идентификатор #5
Спасибо но я уже сам разобрался. (да перепутал).
s@nter
0 / 0 / 0
Регистрация: 14.01.2011
Сообщений: 5
12.03.2011, 22:17     error C2061: синтаксическая ошибка: идентификатор #6
Возникает Error C2061: синтаксическая ошибка: идентификатор "Odr_int"
(в 95 строке)
подскажите как исправить
Код
#include <yazpp/z-assoc.h>

namespace yazpp_1 {

class Z_Server;

class YAZ_EXPORT Z_ServerUtility {
 public:
    void create_databaseRecord (ODR odr, Z_NamePlusRecord *rec,
                                const char *dbname, const Odr_oid *format,
                                const void *buf, int len);
    void create_surrogateDiagnostics(ODR odr, Z_NamePlusRecord *rec,
                                     const char *dbname, int error,
                                     char *const addinfo);

    Z_Records *create_nonSurrogateDiagnostics (ODR odr, int error,
                                               const char *addinfo);

    void create_diagnostics (
        ODR odr, int error, const char *addinfo,
        Z_DiagRec ***dreca, int *num);

    virtual ~Z_ServerUtility() = 0;
};

class YAZ_EXPORT IServer_Facility {
 public:
    virtual int init(Z_Server *server,
                     Z_InitRequest *initRequest,
                     Z_InitResponse *initResponse) = 0;
    virtual int recv(Z_Server *server, Z_APDU *apdu) = 0;

    virtual ~IServer_Facility() = 0;
};

class YAZ_EXPORT Yaz_Facility_ILL : public IServer_Facility {
 public:
    virtual void ill_service (Z_ExtendedServicesRequest *req,
                              Z_ItemOrder *io,
                              Z_ExtendedServicesResponse *res) = 0;

    int init(Z_Server *server,
             Z_InitRequest *initRequest,
             Z_InitResponse *initResponse);
    int recv(Z_Server *server, Z_APDU *apdu);
};

class YAZ_EXPORT Yaz_Facility_Update : public IServer_Facility {
 public:
    virtual void update_service (Z_ExtendedServicesRequest *req,
                                 Z_IUUpdate *io,
                                 Z_ExtendedServicesResponse *res) = 0;

    virtual void update_service0 (Z_ExtendedServicesRequest *req,
                                 Z_IU0Update *io,
                                 Z_ExtendedServicesResponse *res) = 0;

    int init(Z_Server *server,
             Z_InitRequest *initRequest,
             Z_InitResponse *initResponse);
    int recv(Z_Server *server, Z_APDU *apdu);
};


class YAZ_EXPORT Yaz_Facility_Retrieval : public IServer_Facility,
    public Z_ServerUtility {
 public:

    virtual int sr_init (Z_InitRequest *initRequest,
                         Z_InitResponse *initResponse) = 0;
    virtual void sr_search (Z_SearchRequest *searchRequest,
                            Z_SearchResponse *searchResponse) = 0;
    virtual void sr_present (Z_PresentRequest *presentRequest,
                             Z_PresentResponse *presentResponse) = 0;
    virtual void sr_record (const char *resultSetName,
                            int position,
                            Odr_oid *format,
                            Z_RecordComposition *comp,
                            Z_NamePlusRecord *namePlusRecord,
                            Z_Records *diagnostics) = 0;
    int init(Z_Server *server,
             Z_InitRequest *initRequest,
             Z_InitResponse *initResponse);
    int recv(Z_Server *server, Z_APDU *apdu);

    ODR odr_encode();
    ODR odr_decode();
 private:
    Z_Records *pack_records (Z_Server *s,
                             const char *resultSetName,
                             int start, int num,
                             Z_RecordComposition *comp,
                             Odr_int *next, Odr_int *pres,
                             Odr_oid *oid);

    void fetch_via_piggyback (Z_Server *s,
                              Z_SearchRequest *searchRequest,
                              Z_SearchResponse *searchResponse);
    void fetch_via_present (Z_Server *s,
                            Z_PresentRequest *req, Z_PresentResponse *res);

    int m_preferredMessageSize;
    int m_maximumRecordSize;
    ODR m_odr_encode;
    ODR m_odr_decode;
};

class YAZ_EXPORT Z_Server_Facility_Info {
    friend class Z_Server;
    IServer_Facility *m_facility;
    char *m_name;
    Z_Server_Facility_Info *m_next;
};



class YAZ_EXPORT Z_Server : public Z_Assoc {
public:
    Z_Server(IPDU_Observable *the_PDU_Observable);
    virtual ~Z_Server();
    void recv_Z_PDU(Z_APDU *apdu, int len);
    virtual void recv_GDU(Z_GDU *apdu, int len);
    void facility_add(IServer_Facility *facility, const char *name);
    void facility_reset ();


 private:
    Z_Server_Facility_Info *m_facilities;
};

class YAZ_EXPORT Yaz_USMARC {
 public:
    const char *get_record(size_t position);
};
};
/*
 * Local variables:
 * c-basic-offset: 4
 * c-file-style: "Stroustrup"
 * indent-tabs-mode: nil
 * End:
 * vim: shiftwidth=4 tabstop=8 expandtab
 */
Yandex
Объявления
12.03.2011, 22:17     error C2061: синтаксическая ошибка: идентификатор
Ответ Создать тему
Опции темы

Текущее время: 12:37. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru