Çözüldü C++ ''söz dizimi'' hatası

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.

Primearc

Picopat
Katılım
3 Ocak 2021
Mesajlar
683
Makaleler
2
Çözümler
6
Yer
San Junipero
C++:
#include <iostream>
#include <string>

using namespace std;

class Employee
{
private:
    string name;
    int salary;

public:
    Employee(string isim, int maas) {
        name = isim;
        salary = maas;
    }
    string getName{
        return name;
    }
        int getSalary{
        return salary;
    }
};

int main()
{
   Employee("Osman Gultekin", 5000);
   cout << getName() << endl;
   cout << getSalary() << endl;

return 0;
}

resim_2021-01-18_203437.png


Yapıcı metodlara çalışıyordum ve böye bir hata aldım. Visual Studionun Hata Düzenleyicisinin dediğini yaparsam bu seferde 8 tane bilmediğim hata alıyorum.
 
Çözüm
Küçük detaylar. Bir kaç küçük parantezcik.

Onun dışında, çalışanı bir nesne olarak oluşturmayı unutmuşsunuz.
Doğru kod:
#include <iostream>
#include <string>

using namespace std;

class Employee
{
private:
    string name;
    int salary;

public:
    Employee(string isim, int maas) {
        name = isim;
        salary = maas;
    }
    string getName(){
        return name;
    }
        int getSalary(){
        return salary;
    }
};

int main()
{
   Employee calisan1("Osman Gultekin", 5000);
   cout << calisan1.getName() << endl;
   cout << calisan1.getSalary() << endl;

return 0;
}

TerabyteForever

Kilopat
Katılım
5 Mart 2017
Mesajlar
5.768
Makaleler
5
Çözümler
46
Yer
/dev/sda1
Küçük detaylar. Bir kaç küçük parantezcik.

Onun dışında, çalışanı bir nesne olarak oluşturmayı unutmuşsunuz.
Doğru kod:
#include <iostream>
#include <string>

using namespace std;

class Employee
{
private:
    string name;
    int salary;

public:
    Employee(string isim, int maas) {
        name = isim;
        salary = maas;
    }
    string getName(){
        return name;
    }
        int getSalary(){
        return salary;
    }
};

int main()
{
   Employee calisan1("Osman Gultekin", 5000);
   cout << calisan1.getName() << endl;
   cout << calisan1.getSalary() << endl;

return 0;
}
 
Çözüm
KS
Primearc

Primearc

Picopat
Katılım
3 Ocak 2021
Mesajlar
683
Makaleler
2
Çözümler
6
Yer
San Junipero
Küçük detaylar. Bir kaç küçük parantezcik.

Onun dışında, çalışanı bir nesne olarak oluşturmayı unutmuşsunuz.
Doğru kod:
#include <iostream>
#include <string>

using namespace std;

class Employee
{
private:
    string name;
    int salary;

public:
    Employee(string isim, int maas) {
        name = isim;
        salary = maas;
    }
    string getName(){
        return name;
    }
        int getSalary(){
        return salary;
    }
};

int main()
{
   Employee calisan1("Osman Gultekin", 5000);
   cout << calisan1.getName() << endl;
   cout << calisan1.getSalary() << endl;

return 0;
}
C++:
#include <iostream>
#include <string>

using namespace std;

class Employee
{
private:
    string name;
    int salary;

public:
    void setName(string isim) {
        name = isim;
    }
    void setSalary(int maas) {
        salary = maas;
    }
    string getName() {
        return name;
    }
    int getSalary() {
        return salary;
    }
};

int main()
{
    Employee calısan1;
    calısan1.setName("Osman guletkin");
    calısan1.setSalary(5000);
    cout << calisan1.getName() << endl;
    cout << calisan1.getSalary() << endl;

    return 0;
}

Peki aynı şeyi diyelimki böyle yapmak istedim. Ama böyle yapmaya çalıştığımdada 32. ve 33. satırda calısan1 'in bildirimi yapılmamış tanımlayıcı olduğu hatasını alıyorum. Bunun sebebi nedir ve çözümü nasıl olur?
 

TerabyteForever

Kilopat
Katılım
5 Mart 2017
Mesajlar
5.768
Makaleler
5
Çözümler
46
Yer
/dev/sda1
C++:
#include <iostream>
#include <string>

using namespace std;

class Employee
{
private:
    string name;
    int salary;

public:
    void setName(string isim) {
        name = isim;
    }
    void setSalary(int maas) {
        salary = maas;
    }
    string getName() {
        return name;
    }
    int getSalary() {
        return salary;
    }
};

int main()
{
    Employee calısan1;
    calısan1.setName("Osman guletkin");
    calısan1.setSalary(5000);
    cout << calisan1.getName() << endl;
    cout << calisan1.getSalary() << endl;

    return 0;
}

Peki aynı şeyi diyelimki böyle yapmak istedim. Ama böyle yapmaya çalıştığımdada 32. ve 33. satırda calısan1 'in bildirimi yapılmamış tanımlayıcı olduğu hatasını alıyorum. Bunun sebebi nedir ve çözümü nasıl olur?
"calısan1" değil, "calisan1" yazmalısınız.
 

Yeni konular

Yukarı