0

i want to access the seating[row][col].getFirstName but with the following code i am getting an error and the same error in strcmp in the if condition can anyone explain what does it mean

Error C3867 'Guest::getFirstName': non-standard syntax; use '&' to create a pointer to member

Auditorium.cpp

  Auditorium::Auditorium(int rowNum, int columnNum) {

    rowNum1 = rowNum;
    columnNum1 = columnNum;

    Guest** seating =new Guest*[rowNum];

    for (int i = 0; i < rowNum; i++)
    {
        seating[i] = new Guest[columnNum];

        Guest();
    }

}

     bool Auditorium::assignGuestAt(int row,int col, Guest* tempGuest){


        if ((strcmp(seating[row][col].getFirstName ,"???")==0)&& (strcmp(seating[row][col].getLastName , "???")==0)) \\ error
        {

            for (int i = 0; i < row; i++)
            {

                seating[row][col].getFirstName= tempGuest->getFirstName;\\ error
                seating[row][col].getLastName = tempGuest->getLastName;\\ error
                return 1;
            }



        }
        else {
            return 0;

        }

    }

Auditorium.h

#include<iostream>
#include "guest.h"
using namespace std;
class Auditorium
{
    private:
        Guest **seating;
    public:
        Auditorium(int, int);
        Guest* getGuestAt(int, int);
        bool assignGuestAt(int, int, Guest *);
        bool checkBoundaries(int, int);
        void toString();


};

guest.cpp

#include<iostream>
#include"guest.h"

using namespace std;

Guest::Guest()
{

    strcpy_s(firstName,"???");
    strcpy_s(lastName, "???");

}

char* Guest::getFirstName()
{
    return firstName;
}
char* Guest::getLastName()
{
    return lastName;
}
  • getFirstName is a function - to call it use `getFirstName()` – Artemy Vysotsky Oct 01 '17 at 05:38
  • thanks that worked but now i am getting an exception thrown in this line if ((strcmp(seating[row][col].getFirstName() ,"???")==0)&& (strcmp(seating[row][col].getLastName() , "???")==0)) \\ error Exception thrown: read access violation. this->**seating** was 0x111011A. occurred – Deathknight921 Oct 01 '17 at 06:13

0 Answers0