» »

[C#] delete določenega razreda ???

[C#] delete določenega razreda ???

Person ::

A obstaja v C# kaj podobnega za brisnje classov kot v c++:

npr.:

MojRazred* pcHead;

delete pcHead;

????????
Let's make something useful!

andrej ::

classa ne mores zbrisat. zbrises lahko samo objekt, ki je primerek dolocenega rezreda ;)

v C# nimas dobesedno iste zadeve. tam nimas kazalcev. hkrati pa za pomnilnik skrbi poseben garbage collector, ki ti samodejno zbrise objekte, ki se vec ne uporabljajo. Podobno kot pri javi. Ti ne rabis skrbet za to... obstaja dolocena sintaksa, vendar to ni isto kot prejsen delete, ker .net dela malo po svoje prav zaradi tega GC.

Person ::

Ja, to vem, sam zanima me, če lahko sam rečeš, da kr ti takoj pobriše iz pomnilnika?
Let's make something useful!

Senitel ::

Sicer ne poznam C#, ampak v Javi se to naredi tako, da rečeš pcHead=null in verjetno je v C# isto ali podobno (morda =0?). Vendar to ni ravno delete v C++ smislu.

andrej ::

senitel:to v c# ne dela ;)

dj: kot sem reko, tudi ko ti reces naj takoj pobrise to ne naredi. v bistvu ti nikdar ne vec kdaj on pobrise. lahko se zgodi to zdaj, cez 5 minut, ali tudi teoreticno nikoli, ce program tece v neskoncnost...

aja, to lahko naredist z .dispose metodo nad objektom. priporocam da si preberes nekaj vec na to temo... recimo tukaj

Fury ::

Dj sploh ne vem zakaj rabis neki tok nujno brisat? ce mas to c++ prakso da vse popucas kr pust pr mer.. C# vse stale posprav za tabo.

Ce pa slucajno delas memoryefficient program pa kr c# skensli, ker ti 20MB rama po defaultu poje samo virtual machine al kako se rece temu run-time environmetnu pac :)

kopernik ::

V Javi je tako, da KO se zažene garbage collector (kdaj se zažene je odvisno od JVM-ja), popuca vse objekte, na katere ne kaže nobena referenca. Na en način se da Garbage collector prisiliti, da puca takrat, ko mu ti rečeš (metoda System.gc()). Sklepam, da kak podoben sistemski razred obstaja tudi v C#.

noraguta ::

Pust' ot pobyedy k pobyedye vyedyot!

Zgodovina sprememb…

  • spremenilo: noraguta ()

Person ::

Ma, tisto mojo linked listo, ki sem jo 1. napisal za C++(en sosedni topic) sem včeri portal še na C#, pol me je pa zanimalo, če lahko delete *** zamenjam s čim drugim al morm jih sm ven vrečt:))
Tej jih bom pa preprosto izbrisal, pa naj tej PC skrbi za pomnilnik, če je že managed program:D

BTW: A obstaja kaka taka funkcija kot getch() - da ti vrne, kateri znak pritisneš, ne da ga prikaže na zaslon?
Ko Consol.ReadLine(); prikaže na zaslon, pa še enter moraš stinit. Ne da se mi pa zdej 1/2 pol pomoči preiskat.
Let's make something useful!

Zgodovina sprememb…

  • spremenil: Person ()

Fury ::

dj poglej ce v consolu obstaja kaksna fukncija peek() al pa kej.. to bi znal bit, sam ne vem ce ma console to, ker nism prevec uporablu :)


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

[C++]prenašanje datotek iz neta

Oddelek: Programiranje
121481 (1301) BlueRunner
»

Avtomatično pritiskanje gumbov!

Oddelek: Programiranje
121414 (1144) darkolord
»

[C++]Zagon drugega programa in izvajanje ukaza

Oddelek: Programiranje
111406 (1251) 64202
»

[.NET ali c#] ne najdem dokumentacije

Oddelek: Programiranje
81435 (1281) atasmrk
»

Kako blokirati kombinacijo tipk (Ctrl+Alt+Del, ...) v VB za win XP, 2000

Oddelek: Programiranje
91428 (1246) noraguta

Več podobnih tem