C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

C ++プログラムの関数にオブジェクトを渡す方法は?


オブジェクトを関数に渡すには4つの方法があります。クラスXがあり、それを関数funに渡したいとしましょう。

値渡し

これにより、関数スコープにオブジェクトの浅いローカルコピーが作成されます。ここで変更したものは、渡されたオブジェクトには反映されません。たとえば、

宣言

void fun(X x);

電話

X x;
fun(x);

参照渡し

これにより、オブジェクトへの参照が関数に渡されます。ここで変更したものは、渡されたオブジェクトに反映されます。オブジェクトのコピーは作成されません。たとえば、

宣言

void fun(X &x);

電話

X x;
fun(x);

constリファレンスを渡す

これにより、オブジェクトへのconst参照が関数に渡されます。ここでオブジェクトを直接変更/再割り当てすることはできません(ただし、そのメソッドを使用することはできます)。これは、関数にオブジェクトの読み取り専用コピーのみを持たせたい場合に役立ちます。オブジェクトのコピーは作成されません。たとえば、

宣言

void fun(X const *x);

電話

X x;
fun(&x);

constポインタを通過

これにより、オブジェクトへのconstポインタが関数に渡されます。ここでポインタを変更/再割り当てすることはできません。これは、関数にこのオブジェクトのアドレスのみをポインターに含める場合に役立ちます。オブジェクトのコピーは作成されません。たとえば、

宣言

void fun(X *x);

電話

X x;
fun(&x);

ポインタを通過

これにより、オブジェクトへのポインタが関数に渡されます。これは、オブジェクトへの参照を渡すことに似ています。オブジェクトのコピーは作成されません。たとえば、

宣言

<void fun(X *x);>

電話

X x;
fun(&x);

  1. JavaScriptで無名関数に引数を渡す方法は?

    以下は、JavaScriptの無名関数に引数を渡すためのコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style>  

  2. C ++プログラムを使用してプログラムを起動するにはどうすればよいですか?

    ここでは、メモ帳などのサードパーティアプリケーションやC++プログラムを使用したものを起動する方法を説明します。このプログラムは非常に単純で、コマンドプロンプトコマンドを使用してこのタスクを実行できます。 system()関数内でアプリケーション名を渡します。これにより、それに応じて開きます。 例 #include <iostream> using namespace std; int main() {    cout >> "Opening Nodepad.exe" >> endl;    sy