Почему он не выводит значение моей строковой переменной полностью? - PullRequest
0 голосов
/ 15 сентября 2018

У меня есть проблема с моей программой, которую я не мог решить в течение нескольких дней. Проблема с моим кодом C ++.

    #include "pch.h"
#include <iostream>
#include <string>
using namespace std;

class Friend
{
private:
    string name;
    string age;
    string gender;
public:
    Friend(string x, string y, string z)
    {
        x = name;
        y = age;
        z = gender;
    }

    string giveFriendInfo()
    {
        string info = "His name is " + name + " of age " + age + " and gender " + gender;
        return info;
    }
};


int main()
{
    Friend fo("Jonathan", "17", "male");
    cout << fo.giveFriendInfo() << "\n";
    cin.get();
    return 0;
}

Я пытался собрать его в моей визуальной студии 2017 года, и он прекрасно работает. Когда я запускаю его, это вывод, который он мне дал:

Его зовут по возрасту и полу

Вот и все, он не вывел значения имени, пола и возраста. Я не понимаю почему? Любая помощь будет оценена.

1 Ответ

0 голосов
/ 15 сентября 2018
Friend(string x, string y, string z)
{
    x = name;
    y = age;
    z = gender;
}

Предположительно, вы имели в виду:

Friend(string x, string y, string z)
{
    name = x;
    age = y;
    gender = z;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...