値渡しとは? わかりやすく解説

Weblio 辞書 > コンピュータ > PHP用語 > 値渡しの意味・解説 

値渡し

読み方あたいわたし
【英】pass by value, call by value

値渡しとは、プログラミング言語における関数呼び出し方式1つで、呼出し側が指定した引数コピーされたものが関数内部渡され使用されるというものである

一般的に関数の定義用いられる変数仮引数実際呼出し時に具体的な値が定まった物を実引数と呼ぶ。呼出し元の処理から関数呼び出されると、関数先頭引数の値が初期化される。値渡しの場合には、呼出し時の変数とは別に、同じ内容を持つ、関数内部でのみ使用される内部用の変数作成される

関数の引数を値渡しにした場合関数内部どのような処理をしても、呼出し元の値には一切影響及ばない一方参照渡しさんしょうわたしpass by reference)にした場合は、関数内部の処理が、呼出し元に影響する可能性がある。

関数概念を持つほとんどの現代的なプログラミング言語は値渡しをサポートしている。C言語では、原則として値渡しのみをサポートする。ただし、C言語ではポインタ変数を持つため、ポインタを渡すことにより、擬似的参照渡し実現することができる。

なお、関数呼び出しという意味で「call by valueと言う場合もある。

プログラミングのほかの用語一覧
オブジェクト指向:  UML
コーディング:  ActiveRecord  アキュムレーター  値渡し  後判定ループ  アロケーション  アンダーフロー

値渡し

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/02/20 07:25 UTC 版)

引数」の記事における「値渡し」の解説

値渡し(あたいわたしcall by value)は右辺値を渡す方法で、実引数として変数渡したとしても、その値のみが渡される。もちろん即値複雑な式を渡すこともでき、式の評価結果渡される。その仕組みとしては、独立した新たな変数関数内に用意され、元の値がコピーされる。そのため変数渡したとしても、元の変数変更されるという事はない。 これは「関数副作用持たない」という観点から、計算中心とする言語では望ましい動作といえる。またそもそも代入概念のない関数型言語では、引数は必ず値で渡される考えられる(ただし、代入存在しない以上コピーをとる必要もない)。 値渡しを採用した言語としてはC言語MLAPLSchemeJava等が挙げられる

※この「値渡し」の解説は、「引数」の解説の一部です。
「値渡し」を含む「引数」の記事については、「引数」の概要を参照ください。

ウィキペディア小見出し辞書の「値渡し」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「値渡し」の関連用語

値渡しのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



値渡しのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
PHPプロ!PHPプロ!
©COPYRIGHT ASIAL CORPORATION ALL RIGHTS RESERVED.
IT用語辞典バイナリIT用語辞典バイナリ
Copyright © 2005-2024 Weblio 辞書 IT用語辞典バイナリさくいん。 この記事は、IT用語辞典バイナリ値渡しの記事を利用しております。
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、Wikipediaの引数 (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2024 GRAS Group, Inc.RSS