vectorc++要素は関数パラメータをしてどのようにします
2561 ワード
最近vectorに出会って少しぼんやりしていて、どうして1つの要素だけが伝わるのか思い出せません......構造体の配列を連想して結果がもっと乱れています......
次に比較します.
配列要素、定義関数パラメータint
コンテナクラス、定義関数パラメータは含まれる構造体studentです
int型配列の要素を関数パラメータとして使用します.
student構造体の配列の要素を関数パラメータとして使用します.
student構造体のコンテナの要素を関数パラメータとして使用します.
以下は、対比===================================================================================
伝達配列と伝達配列要素の対比
前の簡単な例:配列要素、配列ヘッダアドレスをパラメータとし、配列ヘッダが0の知識点を融合した.
実行結果:2行3
コンテナクラスコンテナクラス:[配列](Array)と[配列要素](Array Element)の比較
次に比較します.
配列要素、定義関数パラメータint
コンテナクラス、定義関数パラメータは含まれる構造体studentです
int型配列の要素を関数パラメータとして使用します.
#include
using namespace std;
void fun1(int num)//
{
cout <
student構造体の配列の要素を関数パラメータとして使用します.
#include
using namespace std;
typedef struct
{
int x;
int y;
}student;
student mark[1];//student
void fun2(student mum)//
{
cout <
student構造体のコンテナの要素を関数パラメータとして使用します.
#include
#include
using namespace std;
typedef struct
{
int x;
int y;
}student;
vector mark;// student , mark ……
//void fun3(vector num), , void fun1(int num[]) ……
void fun3(student mum)//
{
cout <
以下は、対比===================================================================================
伝達配列と伝達配列要素の対比
#include
using namespace std;
//
void f1(int a[]);
void f2(int a);
int main()
{
int a[1] = { 0 };// a, 1 , a[0]
//
f1(a);
f2(a[0]);
return 0;
}
//
void f1(int a[]) //
{
cout << a[0] << endl;
}
void f2(int a) //
{
cout << a << endl;
}
前の簡単な例:配列要素、配列ヘッダアドレスをパラメータとし、配列ヘッダが0の知識点を融合した.
#include
void f1(int a)
{
printf("%d
", a);
}
void f2(int a[])
{
printf("%d
", a[2]);
}
void main()
{
int a[5] = { 1,2,3,4,5 };
f1(a[1]);
f2(a);
}
実行結果:2行3
コンテナクラスコンテナクラス:[配列](Array)と[配列要素](Array Element)の比較
#include
#include
using namespace std;
typedef struct
{
int x;
int y;
}student;
vector mark;// student , mark ……
void fun4(vector num)// void fun1(int num[])
{
cout << "student ,x:" << num[0].x << endl;
cout << "student ,y:" << num[0].y << endl;
}
void fun3(student mum)//
{
cout << "student ,x:" << mum.x << endl;
cout << "student ,y:" << mum.y << endl;
}
int main()
{
mark.resize(1);// ,
mark[0].x = 1;
mark[0].y = 1;
fun3(mark[0]);// [0] : ,
fun4(mark);// , ( )
return 0;
}