C++におけるpairの使い方および関数の複数の戻り値の使い方
4823 ワード
注意:文章は多くの人のブログを転載するため、私はただ総合的にします.
pairのタイプ:
pairはテンプレートタイプです.各pairは2つの値を格納できます.この2つの値には制限はありません.自分で書いたstructのオブジェクトを入れることもできます.
pair p;
pair p;
pair p;
どちらでもいいです...
適用:1つの関数に2つの戻り値がある場合、同じタイプであれば配列で返すことができ、異なるタイプであればstructを自分で書くことができますが、便利にするためにc++持参のpairを使って、2つの値を持つpairを返すことができます.戻り値の適用を除いて、1つのオブジェクトに複数の属性がある場合は、通常自分でstructを1つ書き、2つの属性であればpairで操作できます.の
pairを適用すると、自分でstructを書くことができます...3つの属性があれば、実は使えるpairの、極端な書き方pair>
書き方が極端だ.(後ろの2つ>>スペースを指定しないと>>シフト演算子になります)
makr_pair:
pairp (5,6);
pair p1= make_pair(5,6);
pair p2 ("aa",5.0);
pair p3 = make_pair("aa",5.0);
この2つの書き方でpairを生成します.
pairの値を取得するにはどうすればいいですか.の
各pairにはfirstとsecondの2つの属性値があります
cout<
メソッドではなく属性値であることに注意してください.
pairタイプの使用は煩雑であるため、同じpairタイプを複数定義する場合はtypedefが宣言を簡略化することができます.
typedef pair author;
author pro("May", "Lily");
author joye("James", "Joyce");
pairの使用:
structの使用:
pairのタイプ:
pairはテンプレートタイプです.各pairは2つの値を格納できます.この2つの値には制限はありません.自分で書いたstructのオブジェクトを入れることもできます.
pair p;
pair p;
pair p;
どちらでもいいです...
適用:1つの関数に2つの戻り値がある場合、同じタイプであれば配列で返すことができ、異なるタイプであればstructを自分で書くことができますが、便利にするためにc++持参のpairを使って、2つの値を持つpairを返すことができます.戻り値の適用を除いて、1つのオブジェクトに複数の属性がある場合は、通常自分でstructを1つ書き、2つの属性であればpairで操作できます.の
pairを適用すると、自分でstructを書くことができます...3つの属性があれば、実は使えるpairの、極端な書き方pair>
書き方が極端だ.(後ろの2つ>>スペースを指定しないと>>シフト演算子になります)
makr_pair:
pairp (5,6);
pair p1= make_pair(5,6);
pair p2 ("aa",5.0);
pair p3 = make_pair("aa",5.0);
この2つの書き方でpairを生成します.
pairの値を取得するにはどうすればいいですか.の
各pairにはfirstとsecondの2つの属性値があります
cout<
メソッドではなく属性値であることに注意してください.
pairタイプの使用は煩雑であるため、同じpairタイプを複数定義する場合はtypedefが宣言を簡略化することができます.
typedef pair author;
author pro("May", "Lily");
author joye("James", "Joyce");
pairの使用:
#include
#include
#include
#include
#include
structの使用:
// n , , 。 。
#include
#define N 3
struct Student
{
int num;
char name[20];
float socre[3];
float aver;
};
void input(struct Student stu[])
{
int i;
printf(" : , , :
");
for(i=0;istu[m].aver)
m=i;
return stu[m];
}
void print(struct Student stud)
{
printf("
");
printf(" :%d
:%s
:%5.1f,%5.1f,%5.1f
:%6.2f
",stud.num,stud.name,stud.socre[0],stud.socre[1],stud.socre[2],stud.aver);
}
int main()
{
struct Student stu[N],*p=stu;
input(p);
print(max(p));
return 0;
}