logo

Comment passer une chaîne à une fonction en utilisant l'appel par référence ?

Passer une chaîne par référence dans divers langages de programmation implique l'utilisation de mécanismes ou de constructions spécifiques pour permettre à la fonction de modifier directement la chaîne d'origine, plutôt que de travailler avec une copie. Ici, je vais vous expliquer comment y parvenir en C++, C#, Python et JavaScript.

Table des matières



Comment passer une chaîne à une fonction à l'aide d'un appel par référence en C++

En C++, vous pouvez passer une chaîne par référence en utilisant le ' &'> symbole dans la liste des paramètres de la fonction. Cela vous permet de modifier la chaîne d'origine directement dans la fonction.

Par exemple:

C++








#include> #include> // using '&' symbol before the name of the string> void> modifyString(std::string& str)> {> >str =>'Modified string'>;> }> int> main()> {> >std::string myString =>'Original string'>;> >modifyString(myString);> >std::cout << myString> ><< std::endl;>// Output: 'Modified string'> >return> 0;> }>

>

Architecture Java
>

Sortir

Modified string>

Comment passer une chaîne à une fonction à l'aide d'un appel par référence en Java

Vous ne pouvez pas transmettre directement une chaîne par référence, car Java est un langage de transmission par valeur et les chaînes sont immuables. Cependant, vous pouvez obtenir un effet similaire en utilisant des structures de données mutables ou en encapsulant la chaîne dans un objet personnalisé.

Utilisation d'une structure de données mutable (StringBuilder)

Vous pouvez utiliser leStringBuilder>classe, qui est une séquence de caractères mutable, pour modifier un objet de type chaîne et le transmettre à une fonction. Bien qu'il ne s'agisse pas strictement de transmettre une chaîne par référence, cela vous permet d'obtenir l'effet souhaité en modifiant l'objet de type chaîne d'origine.

Pas:

  1. Créer unStringBuilder>objet avec la chaîne initiale.
  2. Passe leStringBuilder>s'opposer à la fonction.
  3. Modifier leStringBuilder>objet dans la fonction.
  4. Accédez à la chaîne modifiée depuis leStringBuilder>objet après l’appel de fonction.

Exemple:

Java




bloquer les publicités YouTube sur Android
public> class> StringModificationExample {> >static> void> modifyString(StringBuilder strBuilder) {> >strBuilder.append(>' (Modified)'>);> >}> >public> static> void> main(String[] args) {> >StringBuilder myStringBuilder =>new> StringBuilder(>'Original String'>);> >modifyString(myStringBuilder);> >String myString = myStringBuilder.toString();> >System.out.println(myString);>// Output: 'Original String (Modified)'> >}> }>

>

>

Sortir

Original String (Modified)>

Comment passer une chaîne à une fonction à l'aide d'un appel par référence en C#

En C#, vous pouvez passer une chaîne par référence en utilisant le ' ref'> mot-clé dans la liste des paramètres de la fonction. Cela vous permet de modifier la chaîne d'origine directement dans la fonction.

Exemple:

C#


additionneur plein



using> System;> class> Program {> >static> void> ModifyString(>ref> string> str) {> >str =>'Modified string'>;> >}> >static> void> Main() {> >string> myString =>'Original string'>;> >ModifyString(>ref> myString);> >Console.WriteLine(myString);>// Output: 'Modified string'> >}> }>

>

>

Sortir

Modified string>

Comment passer une chaîne à une fonction à l'aide d'un appel par référence en Python

En Python, les chaînes sont immuables, vous ne pouvez donc pas les transmettre par référence. Cependant, vous pouvez contourner cette limitation en qui passe une structure de données mutable, telle qu'un liste, puis la reconvertir en chaîne si besoin.

Exemple:

Python




def> modify_string(string_list):> >string_list[>0>]>=> 'Modified string'> my_string_list>=> [>'Original string'>]> modify_string(my_string_list)> my_string>=> my_string_list[>0>]> print>(my_string)># Output: 'Modified string'>

objet java en json
>

>

Sortir

Modified string>

Comment passer une chaîne à une fonction à l'aide d'un appel par référence en JavaScript

En JavaScript, vous pouvez obtenir un effet similaire en passer un objet avec une propriété qui contient la chaîne . Vous pouvez alors modifier la propriété dans la fonction.

Exemple:

Javascript




function> modifyString(obj) {> >obj.str =>'Modified string'>;> }> const myObj = { str:>'Original string'> };> modifyString(myObj);> const myString = myObj.str;> console.log(myString);>// Output: 'Modified string'>

>

mylivecricket.in
>

Sortir

Modified string>

Dans ces langages de programmation, vous pouvez transmettre des chaînes par référence (ou un effet similaire) à l'aide de techniques spécifiques au langage. Cependant, il est essentiel d’être conscient des règles et des structures de données du langage, car l’immuabilité des chaînes en Python et JavaScript peut avoir un impact sur l’approche que vous adoptez.