Passar una cadena per referència en diversos llenguatges de programació implica utilitzar mecanismes o construccions específics per permetre que la funció modifiqui la cadena original directament, en lloc de treballar amb una còpia. Aquí, explicaré com aconseguir-ho en C++, C#, Python i JavaScript.
Taula de contingut
- Com passar una cadena a una funció mitjançant la trucada per referència en C#
- Com passar una cadena a una funció mitjançant la trucada per referència a Java
- Com passar una cadena a una funció mitjançant la trucada per referència a Python
- Com passar una cadena a una funció mitjançant la trucada per referència a JavaScript
Com passar una cadena a una funció mitjançant la trucada per referència en C++
En C++, podeu passar una cadena per referència utilitzant el '
&'>símbol a la llista de paràmetres de funció. Això us permet modificar la cadena original directament dins de la funció.
Per 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;> }> |
>
multithreading java
>Sortida
Modified string>
Com passar una cadena a una funció mitjançant la trucada per referència a Java
No podeu passar una cadena per referència directament, ja que Java és un llenguatge de pas per valor i les cadenes són immutables. Tanmateix, podeu aconseguir un efecte similar utilitzant estructures de dades mutables o encapsulant la cadena en un objecte personalitzat.
Ús d'una estructura de dades mutable (StringBuilder)
xarxes i tipus
Podeu utilitzar elStringBuilder>class, que és una seqüència mutable de caràcters, per modificar un objecte semblant a una cadena i passar-lo a una funció. Tot i que això no és passar estrictament una cadena per referència, us permet aconseguir l'efecte desitjat de modificar l'objecte semblant a una cadena original.
Passos:
- Crea un
StringBuilder>objecte amb la cadena inicial. - Passa el
StringBuilder>objecte de la funció. - Modificar el
StringBuilder>objecte dins de la funció. - Accediu a la cadena modificada des de
StringBuilder>objecte després de la crida de funció.
Exemple:
Java
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)'> >}> }> |
>
>Sortida
Original String (Modified)>
Com passar una cadena a una funció mitjançant la trucada per referència en C#
En C#, podeu passar una cadena per referència utilitzant el ‘
ref'>paraula clau a la llista de paràmetres de funció. Això us permet modificar la cadena original directament dins de la funció.
Exemple:
C#
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'> >}> }> |
>
pawandeep rajan
>
convertint la cadena a int javaSortida
Modified string>
Com passar una cadena a una funció mitjançant la trucada per referència a Python
A Python, les cadenes són immutables, de manera que no les podeu passar per referència. Tanmateix, podeu evitar aquesta limitació passant una estructura de dades mutable, com ara a llista i, a continuació, torna a convertir-la en una cadena si és necessari.
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'> |
>
>Sortida
Modified string>
Com passar una cadena a una funció mitjançant la trucada per referència a JavaScript
A JavaScript, podeu aconseguir un efecte similar mitjançant passant un objecte amb una propietat que conté la cadena . Llavors pots modificar la propietat dins de la funció.
dibuix de rectangle gimp
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'> |
>
>Sortida
Modified string>
En aquests llenguatges de programació, podeu passar cadenes per referència (o un efecte similar) mitjançant tècniques específiques del llenguatge. Tanmateix, és essencial ser conscient de les regles i les estructures de dades del llenguatge, ja que la immutabilitat de cadenes en Python i JavaScript pot afectar l'enfocament que adopteu.