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#
- Comment passer une chaîne à une fonction à l'aide d'un appel par référence en Java
- Comment passer une chaîne à une fonction à l'aide d'un appel par référence en Python
- Comment passer une chaîne à une fonction à l'aide d'un appel par référence en JavaScript
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:
- Créer un
StringBuilder>objet avec la chaîne initiale. - Passe le
StringBuilder>s'opposer à la fonction. - Modifier le
StringBuilder>objet dans la fonction. - Accédez à la chaîne modifiée depuis le
StringBuilder>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.