1. 程式人生 > 實用技巧 >vue元件的駝峰式命名與短橫線分割命名

vue元件的駝峰式命名與短橫線分割命名

在我們討論 “Java中引數傳遞的型別” 這個問題之前,我們首先需要對引數傳遞的型別做一些瞭解。


眾所周知,Java語言的許多概念是傳承自C++的,因此我們需要先對C++的引數傳遞型別做一些瞭解。C++中引數的傳遞有三種,分別是:

1、傳值

  具體操作:在呼叫函式/方法時,會建立形參列表中的相應物件,並將實參的各項值,複製給新建立的形參。

  下面貼一段程式碼,並進行分析:

#include <iostream>
using namespace std;

//成績類:內含語、數、英 三科成績
class Score{
public:
    double chinese;
    
double math; double english; //構造方法 Score(){} Score(double chinese,double math,double english){ this->chinese = chinese; this->math = math; this->english = english; } }; //學生類:內含年齡、成績 class Student{ public: //建構函式 Student(int age,Score score){
this->age = age; this->score = score; } void setAge(int age){ this->age = age; } void setScore(Score score){ this->score = score; } //資訊概覽 void show(){ cout<<"該生今年"<<age<<"歲,語數英三科分別為"<<score.chinese<<"
- "<<score.math<<" - "<<score.english<<endl; } private: int age; Score score; }; void changeStudent(Student student){ student.setAge(99); } int main() { //建立一個學生 Score score(88,90,95); Student student(17,score);   //展示學生資訊 student.show();   //呼叫修改函式 changeStudent(student);   //再次展示學生資訊 student.show(); return 0; }

從執行結果可以看到,兩次show()展示的資訊是一樣的。 這是因為在呼叫changeStudent()函式時,傳的是值 changeStudent()函式會新建立一個形參物件,然後把實參的各個屬性拷貝到形參中。

(如果在changeStudent函式的頭部和底部分別呼叫student.show方法,就會發現函式內的student的值確實修改了,不過這個student是changeStudent函式臨時建立的,與主函式中的student除了值相同,沒有一分錢的關係,他們的地址並不相同 —— 換言之,他們並不是一個物件 這個臨時建立的student會在函式執行完後,自動銷燬)

2、傳指標

  具體操作:在呼叫函式/方法時,會建立一個形參指標,並將實參指標的地址,拷貝給實參指標。 (看描述就可以看出來,傳指標其實就是傳值)

#include <iostream>
using namespace std;

//成績類:內含語、數、英 三科成績
class Score{
public:
    double chinese;
    double math;
    double english;
    //構造方法
    Score(){}
    Score(double chinese,double math,double english){
        this->chinese = chinese;
        this->math = math;
        this->english = english;
    }
};

//學生類:內含年齡、成績
class Student{
public:
    //建構函式
    Student(int age,Score score){
        this->age = age;
        this->score = score;
    }
    void setAge(int age){
        this->age = age;
    }
    void setScore(Score score){
        this->score = score;
    }
    //資訊概覽
    void show(){
        cout<<"該生今年"<<age<<"歲,語數英三科分別為"<<score.chinese<<" - "<<score.math<<" - "<<score.english<<endl;
    }
private:
    int age;
    Score score;
};

void changeStudent(Student *pStudent){
    pStudent->setAge(99);
}

int main()
{
    //建立一個學生
    Score score(88,90,95);
    Student student(17,score);
    //建立一個指標
  Student *pStudent = &student;   
//展示學生資訊 student.show();   //呼叫修改函式 changeStudent(pStudent);   //再次展示學生資訊 student.show(); return 0; }

  

3、傳引用

首先,比較確定的點就是