C
int Test(int* a)
{
if(a != null) *a = 5; // optionaalinen output-parametri
return 10;
}
C#
- EI VOI KÄYTTÄÄ REF EIKÄ OUT, koska parametrin on oltava optionaalinen, ja molemmat REF sekä OUT vaativat että parametri on aina non-null.
C# - optionaalinen metodin output-parametri
5
217
Vastaukset
- 23333
Mihin tuollaista edes tarvitsee? Mikset vain palauta metodista arvoa?
- c++ yhä paras
Jos et ole koskaan käyttänyt C :aa niin ei kannata edes yrittää vastata. "Mihin tuollaista tarvitsee", voi v....
- 222223333
c++ yhä paras kirjoitti:
Jos et ole koskaan käyttänyt C :aa niin ei kannata edes yrittää vastata. "Mihin tuollaista tarvitsee", voi v....
No nyt on kyse C# kielestä? Miksi koitat koodata C# kielellä C kun ne ovat eri kieliä?
- lelumyass
C#
unsafe int test(int* a)
{
if (a != null) *a = 5;
return 10;
}
Ja ongelma oli? "if(a != null)"
Ja tässä sulla ei tietenkään ole mitään varmuutta, että a on alustettu oikein eli joko null:ks tai osoittaa oikeeseen muistipaikkaan ennen metodin kutsua:
int* access_violation; // sisältää satunnaisen osoitteen...
test(access_violation); // voila!!
c#:ssä:
http://msdn.microsoft.com/en-us/library/dd264739.aspx
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
- 1077763
Siekkilässä ajettu ihmisten yli- mitä tapahtui? Länsi-Savo ei ole uutisoinut asiata
Manneja, vaiko matuja?1126026- 835177
- 1394546
Alavuden sairaala
Säästääkö Alavuden sairaala sähkössä. Kävin Sunnuntaina vast. otolla. Odotushuone ja käytävä jolla lääkäri otti vastaan113220- 592997
- 582938
Törkeää toimintaa
Todella törkeitä kaheleita niitä on Ylivieskassakin. https://www.ess.fi/uutissuomalainen/8570818102454- 612437
Hei........
Pelkkä sun näkeminen saa mut hymyilemään pitkin iltaa. Oot niin 🤩😘 Edellinen poistettiin.562066