C++カスタム関数戻りタイプ

1193 ワード

知識点のまとめ
C++の基本データ型は、pythonのようにlistを直接返すことができず、listには戻りたいコンテンツが複数含まれる関数の戻りタイプを制限します.C++の関数戻りタイプを数量に制限されないように、まず、私たちが望んでいるデータ型のクラスまたは構造体を定義することができます.クラスを使用する場合、このクラスにはメンバー変数とコンストラクション関数のみが含まれます.次に、数値と文字列を同時に返すデータ型を定義します.具体的なコードは以下の通りです.
#include 
using namespace std;

//              ,             
class Returndata
{
public:
  int id;
  string name;

public:
  Returndata(int id, string name)
  {
    this->id = id;
    this->name = name;
  }
};

Returndata createdata(int id, string name)
{
  Returndata newdata(id, name);

  return newdata;
}


int main()
{
  Returndata a = createdata(1, "bob");
  cout << a.id << " " << a.name << endl;
  return 0;
}

構造体も使用できます.コードは次のとおりです.
struct Returndata
{
  int id;
  string name;
};

Returndata createdata(int id, string name)
{
  //Returndata newdata(id, name);
  Returndata newdata = {id, name};
  //newdata.id = id;
  //newdata.name = name;

  return newdata;
}


int main()
{
  Returndata a;
  a = createdata(1, "bob");
  cout << a.id << " " << a.name << endl;
  return 0;
}