C++, Delphi, JAVA és egyéb programnyelvek

Started by ignus, 2007-06-05, 15:03:45

Previous topic - Next topic

sirtomi

Ha php-val akarsz feltölteni képeket akkor a move_uploaded_file() függvényel oda mozgatod a fájlt ahova akarod.

http://hu.php.net/manual/en/function.move-uploaded-file.php

Ramiz

Csináltam egy hosszú objektum Vector listát, ahol az A és a B osztályba tartozó objektumok is vannak egymás után fűzve, és nem tudni, mikor melyik jön. Mivel a két osztály hasonló adatokat tartalmaz, és a láncos megoldás alkalmazhatóságának kedvéért, mindkettőt a C osztályból származtattam ("extends"). Most azonban gondban vagyok, mert az adatokat később el kéne érnem, és az A és B osztályok spéci függvényeit, amivel visszaadhatnák a - sajnos nem ugyanannyi mennyiségű és ugyanolyan típusú - adataikat, nem érem el, mert ugye C osztályba tartozó objektum típusú Vector-t definiáltam, és "type mismatch: cannot convert...".

Az jó megoldás, hogy castolok egy heal-t, vagyis egy erőletett konverziót?

QuotetempA = (A) meresiAdatLancC.elementat(i);
tempB = (B) meresiAdatLancC.elementat(j);
12 OZ MOUSE, 12 OZ MOUSE!!! 12 OZ MOUSE, 12 OZ MOUSE!!! 12 OZ MOUSE, 12 OZ MOUSE!!!

Próféta

Quote from: Ramiz on 2009-05-02, 16:20:15
Az jó megoldás, hogy castolok egy heal-t, vagyis egy erőletett konverziót?

QuotetempA = (A) meresiAdatLancC.elementat(i);
tempB = (B) meresiAdatLancC.elementat(j);
Ha jobb megoldás nincs, akkor igen. És ugye instanceof operátorral kérdezheted meg, hogy A vagy B osztályú-e egy C.
De előtte érdemes azért végiggondolni, hogy az egész eltérő viselkedés nem oldható-e meg egy C-beli absztrakt metódus A-ban és B-ben különféleképp történő implementálásával.

Tehát hogy

C next = meresiAdatLancC.get(i);
next.rendezdLe();

ahol a rendezdLe() tagfüggvény törzse más A-ban és B-ben?

Ramiz

Quote from: Próféta on 2009-05-02, 16:47:13
Ha jobb megoldás nincs, akkor igen. És ugye instanceof operátorral kérdezheted meg, hogy A vagy B osztályú-e egy C.

Már írtam rá (régen) egy getType függvényt, ami az objektum egy String változójával tér vissza, ami az A vagy a B nevet tartalmazza Stringként... de közben eszembe jutott, hogy van erre beépített profibb függvény. Hiába, nem vagyok renceres pogramozó. :o Majd kicserélem mindenhol.

Quote from: Próféta on 2009-05-02, 16:47:13De előtte érdemes azért végiggondolni, hogy az egész eltérő viselkedés nem oldható-e meg egy C-beli absztrakt metódus A-ban és B-ben különféleképp történő implementálásával.

Túl bonyolult, kéne egy külön új osztály, amibe belefér A és B visszatérése is, mert másfajta dolgokat adnak vissza (int tömbök vagy int-ek, plusz más mennyiségű tömb stb). Kéne külön rendezdLeA meg rendezdLeB függvény, az meg hülyén néz ki, nem? Plusz piszkálni kéne állandóan a C osztályt, ha A és B mellé újabb vizsgálati típusokat akar valaki bevenni A és B mellé (fognak még D-t, E-t és F-et is elvileg...). Vagy nem? Remélem a típuskonverzió nem számít programozói "geciségnek"... :)
12 OZ MOUSE, 12 OZ MOUSE!!! 12 OZ MOUSE, 12 OZ MOUSE!!! 12 OZ MOUSE, 12 OZ MOUSE!!!

Ramiz

Miért problémázik ezzel? Van jelentősége?


private Vector <String> grayValue = new Vector();


A figyelmeztetések:
[spoiler]Multiple markers at this line
   - Type safety: The expression of type Vector needs unchecked conversion to conform to
    Vector<String>
   - Vector is a raw type. References to generic type Vector<E> should be parameterized[/spoiler]

Lehet, hogy nincs jelentősége, csak nagyon hülye problémákat produkál a program, nem megy, és mivel egész eddig egy nagy adatstruktúrát hoztam létre, most nehéz kibogozni, hogy hol a hiba. Ráadásul nem megy az Eclipse-ben a debug...

'Lauching GUI' has encountered a problem:
Cannot connect to VM


Rosszul raktam fel valamit?
12 OZ MOUSE, 12 OZ MOUSE!!! 12 OZ MOUSE, 12 OZ MOUSE!!! 12 OZ MOUSE, 12 OZ MOUSE!!!

Próféta

Quote from: Ramiz on 2009-05-03, 19:58:14
Miért problémázik ezzel? Van jelentősége?


private Vector <String> grayValue = new Vector();


A figyelmeztetések:
A figyelmeztetések csak figyelmeztetések, és jelen esetben speciel nem valós probléma váltotta ki őket. Csak a fordító nem annyira okos, hogy ezt egyedül el merje dönteni. De ha precízen írod le, akkor nincs gond:

private Vector <String> grayValue = new Vector<String>();


Quote from: Ramiz on 2009-05-03, 19:58:14
Rosszul raktam fel valamit?
Elképzelhető, bár inkább csak nincs rendesen beállítva az Eclipse.
Window / Preferences / Java / Installed JREs legyen kitöltve a felrakott JRE-vel (ami remélem egészben van, mintha meséltél volna olyasmit, hogy őrült módjára raktad fel és törölted le őket).
Ha nem ez a gond, akkor: http://www.lmgtfy.com/?q=eclipse+debug+Cannot+connect+to+VM

Ramiz

Quote from: Próféta on 2009-05-03, 20:39:10
Elképzelhető, bár inkább csak nincs rendesen beállítva az Eclipse.
Window / Preferences / Java / Installed JREs legyen kitöltve a felrakott JRE-vel (ami remélem egészben van, mintha meséltél volna olyasmit, hogy őrült módjára raktad fel és törölted le őket).
Ha nem ez a gond, akkor: http://www.lmgtfy.com/?q=eclipse+debug+Cannot+connect+to+VM

Van fent egy jdk1.6.0_13 és egy jre6 is, valamelyik csak jó lesz!

edit: ja, ez bejött, köszi.

edit 2.: és azt hogy a rákban lehet megnézni, hogy mi dobta az Exception-t, amivel leállt a program? biztos tök egyszerű, de bejön ez a rohadt "Properties for java.lang.NullPointerException" ablak, ami nem is tudom, hogy mire jó, és meg nem mondaná...
12 OZ MOUSE, 12 OZ MOUSE!!! 12 OZ MOUSE, 12 OZ MOUSE!!! 12 OZ MOUSE, 12 OZ MOUSE!!!

motifator

Esetleg másolj be nekünk egy stack trace-t, akkor könnyebb lesz segíteni.
Nothing amazing happens here, and you get used to that: used to a world where everything is ordinary.
Every day we spend here is like a whole lifetime of dying slowly.

Ramiz

Quote from: motifator on 2009-05-04, 08:33:34
Esetleg másolj be nekünk egy stack trace-t, akkor könnyebb lesz segíteni.
Oké, azt hol lehet?

Megszoktam azt a hülye NetBeans fejlesztői környezetet, ami itthon valami mágikus okból kifolyólag nem fut, és az, ha rákattintottam a hiba linkjére a Console-on, odaugrott, ahol a hiba keletkezett.

Az Eclipse-ben még breakpointot sem sikerült beállítanom... egyszerűen nem áll meg, ill. nem is fut rendeesen a program debug módban.
12 OZ MOUSE, 12 OZ MOUSE!!! 12 OZ MOUSE, 12 OZ MOUSE!!! 12 OZ MOUSE, 12 OZ MOUSE!!!

Próféta

Quote from: Ramiz on 2009-05-04, 02:39:38
edit 2.: és azt hogy a rákban lehet megnézni, hogy mi dobta az Exception-t, amivel leállt a program? biztos tök egyszerű, de bejön ez a rohadt "Properties for java.lang.NullPointerException" ablak, ami nem is tudom, hogy mire jó, és meg nem mondaná...
A stact trace-ből. Tudod, az a hosszú lista, amiben a kivétel dobásakor a teljes verem tartalma benne van, és a kivétel neve alatt van felsorolva (kivéve ha a gonosz programozó elkapta és lenyelte a kivételt, de akkor meg úgy kell neki). A verem az egymást hívó metódusok egymásbaágyazódását jelenti.

Quote from: Ramiz on 2009-05-04, 14:29:45
Az Eclipse-ben még breakpointot sem sikerült beállítanom... egyszerűen nem áll meg, ill. nem is fut rendeesen a program debug módban.
Breakpointon csak akkor áll meg, ha debug módban futtatod. Van egy ilyen zöld bogár a toolbaron a Run mellett, azt nyisd le, és válaszd ki az a run configurationt, ami a programod.

Programsorra úgy raksz breakpointot, hogy tőle balra a szürkére klikkelsz duplán. De lehet breakpointot rakni kivételek dobódására is, pont úgy, ahogy már megtaláltad (ez a rohadt "Properties for java.lang.NullPointerException" ablak).

Mit értesz azalatt, hogy továbbra se "rendesen" működik a program debug módban?

TurboK

Keresek olyan PHP kódot, ami beolvas egy külső fájlból egy véletlenszerű sort, a beolvasott szöveget pedig két változóba teszi be (pl egy speciális karakter jelzi az egyik string végét és a másik kezdetét, TAB vagy nemtudom).

Qutoe generátorhoz kell, az a lényeg hogy egy szöveg jelenljen meg, két félre osztva, két külön helyen.

<?
$file= "quotes.txt";
$quotes = file($file);
srand((double)microtime()*1000000);
$randomquote = rand(0,count($quotes)-1);
echo $quotes[$randomquote];
?>


Valami ilyesmi, csak nem tudom hogy a szeparálást hogy lehetne beletenni.

Jó lovag, velünk tartasz-e Camelotba a kerekasztal lovagjai közé?

http://www.saunalahti.fi/cse/foobar2000.php target=_blank>http://web.axelero.hu/fka2636/dwnld_fb2k.png>

Próféta

Quote from: TurboK on 2009-06-17, 02:13:04
Valami ilyesmi, csak nem tudom hogy a szeparálást hogy lehetne beletenni.
A PHP-hoz nem nagyon konyítok, de cserébe tudom azt a kulcsszót, amire keresni érdemes: http://www.google.hu/search?q=php+string+separator
Releváns találat: http://www.w3schools.com/php/func_string_explode.asp
Lásd még: http://us.php.net/manual/en/function.split.php

sirtomi

Beolvasott stringet kettészeded és két változóban tárolód az első és a második felét. Elválasztó karaktert meg hozzáfűzöd.
Szétválasztáshoz substr() vagy más string függvényt használhatsz.

TurboK

Quote from: Próféta on 2009-06-17, 02:21:09
Quote from: TurboK on 2009-06-17, 02:13:04
Valami ilyesmi, csak nem tudom hogy a szeparálást hogy lehetne beletenni.
A PHP-hoz nem nagyon konyítok, de cserébe tudom azt a kulcsszót, amire keresni érdemes: http://www.google.hu/search?q=php+string+separator
Releváns találat: http://www.w3schools.com/php/func_string_explode.asp
Lásd még: http://us.php.net/manual/en/function.split.php

Tökéletes, köszönöm.

<?
$file= "quote.txt";
$quotes = file($file);
srand((double)microtime()*1000000);
$randomquote = rand(0,count($quotes)-1);

$data = $quotes[$randomquote];
$splitdata = explode('|', $data);
echo "$splitdata[0]";
?><br><br><br><?
echo "$splitdata[1]";

?>


quote.txt tartalma meg "szoveg1|szoveg2" soronként.

Egyszer tényleg meg kéne tanulnom a phpt.

Jó lovag, velünk tartasz-e Camelotba a kerekasztal lovagjai közé?

http://www.saunalahti.fi/cse/foobar2000.php target=_blank>http://web.axelero.hu/fka2636/dwnld_fb2k.png>

Nakedape

txt-ből akarok beolvasni és beleírni másik txtbe, kód részlet valakitől? (C++)
Nothing About Culture Makes Sense Except in the Light of Evolution

Próféta

Quote from: Nakedape on 2009-06-18, 16:29:18
txt-ből akarok beolvasni és beleírni másik txtbe, kód részlet valakitől? (C++)
http://www.fredosaurus.com/notes-cpp/io/readtextfile.html
Ha nem számokat akarsz, hanem mondjuk stringet, akkor http://www.fredosaurus.com/notes-cpp/io/reading-lines.html
cout << változó; kiírja a változót a standard outputra (cmd ablak, de persze > jellel átirányítható fájlba); nyithatsz std::cout helyett akármilyen fájlt is ofstreamnek.
Ugyanígy ifstream helyett használhatsz cin-t, az a standard input, tehát alapból amit a júzer beképel a konzolra, de a parancssorban átirányítható fájlból ez is.

kikuchiyo

Visual Basic  :zomg: :zomg: :zomg: :comp:
(Ha valaki beírja, hogy "jó nyelv az", akkor először megölöm őt, aztán magamat)
Failure is the default option

Nakedape

#227
jó nyelv az

[spoiler]fáj a fejem, és elegem van[/spoiler]

ja meg persze köszönöm Próféta!
most egyelőre levették azt a feladatot a vállamról, de sose lehessen tudni
Nothing About Culture Makes Sense Except in the Light of Evolution

kikuchiyo

Saját régi kódjaim olvasgatása néha igen szórakoztató tud lenni.

my $magic_constant = 107; #dB, dBm to dBuV
my $Z0 = 376.991118; # Ohm, Lol pontosság

...

if ($this_is_my_first_time_please_be_gentle) { # I will, honey
$helyszin1 = $f->{HELYSZIN1};
$helyszin2 = $f->{HELYSZIN2};
$helyszincount = 2;
$worksheet->write_row($helyszincount,0, [ $f->{HELYSZIN1}, $f->{HELYSZIN2} ], $form);
}
$column = 2 if $f->{FREKV} =~ /174-22. MHz/;
$column = 3 if $f->{FREKV} =~ /470-830 MHz/;
$column = 4 if $f->{FREKV} =~ /80-2100 MHz/; # kurvara elegem van

...

say "Grafikonok:";
$this_is_my_first_time_please_be_gentle = 1; # Virgin again!

...

if ($do_the_mash_the_monster_mash) {
$modifier = sqrt($f->{'Span'}*1e-9);
} else { $modifier = 1; }

if ($this_is_my_first_time_please_be_gentle) { # I have a feeling that we've done this before
$helyszin1 = $f->{HELYSZIN1};
$helyszin2 = $f->{HELYSZIN2};
...
Failure is the default option

Makos


Kvikveg

WARNING: module "coffee.exe" did not run correctly. Brain running in limited mode.
Do not meddle in the affairs of dragons for you are crunchy and taste good with ketchup.

kikuchiyo

Villáminterjú-stílusban:

- Kedves kikuchiyo, ugye tudja, hogy ha egy >100 rekordból álló, darabonként többezer×többtíz mérési adatot tartalmazó adathalmazt egyetlen nagy hash-be akar behányni, azzal egy méretes lófaszt készít elő magának?
- Igen.
- Köszönöm az interjút!
Failure is the default option

Ramiz

Quote from: kikuchiyo on 2009-07-03, 23:50:48
Villáminterjú-stílusban:

- Kedves kikuchiyo, ugye tudja, hogy ha egy >100 rekordból álló, darabonként többezer×többtíz mérési adatot tartalmazó adathalmazt egyetlen nagy hash-be akar behányni, azzal egy méretes lófaszt készít elő magának?
- Igen.
- Köszönöm az interjút!

:muhahah:
12 OZ MOUSE, 12 OZ MOUSE!!! 12 OZ MOUSE, 12 OZ MOUSE!!! 12 OZ MOUSE, 12 OZ MOUSE!!!

kikuchiyo

...és akkor ennek a folyományaként:

Nem tudtok olyan doksit (könyv, jegyzet, netes anyag), amiből gyorstalpaló módon meg tudnék tanulni adatbázisni? Azt már sejtem, hogy nem úszom meg anélkül, de fogalmam sincs, hogy kezdjek hozzá, hogy építsem fel az adatbázist, hogy azzal ne szúrjam magam különös kegyetlenséggel tökön stb.
Failure is the default option

Próféta

#234
Quote from: kikuchiyo on 2009-07-06, 21:52:36
Nem tudtok olyan doksit (könyv, jegyzet, netes anyag), amiből gyorstalpaló módon meg tudnék tanulni adatbázisni? Azt már sejtem, hogy nem úszom meg anélkül, de fogalmam sincs, hogy kezdjek hozzá, hogy építsem fel az adatbázist, hogy azzal ne szúrjam magam különös kegyetlenséggel tökön stb.
Most kapásból nem tudok jó forrást mondani, úgyhogy a figyelem elterelésére összezavaró ellentámadásba lendülök. Milyen értelemben akarsz megtanulni adatbázisni? A relációs adatbáziskezelés alapjai hiányoznak (tábla, kulcs, idegen kulcs, belső és külső illesztés, index, nézet, trigger stb. + SQL nyelv), vagy ez már megvan, és inkább az érdekel, hogyan kell jól, hatékonyan felépíteni, konfigurálni, optimalizálni, üzemeltetni egy PostgreSQL/MySQL/MS-SQL/Oracle/DB2/stb. adatbázist?

Amúgy az adatbázis az adat hosszú távú tárolására való, tehát egy számítás közepén egy memóriába kényelmesen beférő, köztes adatokat tároló hashmap kiváltására véletlenül se használd. Persze nem biztos, hogy erre akarod bevetni, de a fenti panaszkodásba ez is belefér.

kikuchiyo

Az alapok is hiányoznak, meg ha már hozzányúlok, akkor meg akarom tanulni, hogy kell jól :)

Quote from: Próféta on 2009-07-06, 22:54:49
Amúgy az adatbázis az adat hosszú távú tárolására való, tehát egy számítás közepén egy memóriába kényelmesen beférő, köztes adatokat tároló hashmap kiváltására véletlenül se használd. Persze nem biztos, hogy erre akarod bevetni, de a fenti panaszkodásba ez is belefér.

Itt a gond, egy ember adatai 3-4 mega, és lesz 100-200 ember.
Workaroundként arra gondolok most, hogy ha más nem megy, akkor minden adatot nem töltök be egyszerre, hanem mindig újra-parse-olom a nyers fájlokat, ha kell, az sem túl hosszú idő.

De már csak azért sem ártana az adatbázis, mert akkor lehetne okos lekérdezésekkel ide-oda-keresztbe keresgélni az adatok között és relatíve értelmes módon mindenféle statisztikákat levezetni belőlük.
Failure is the default option

kikuchiyo

Újabb villáminterjú:

- Kedves kikuchiyo, ha már nem érted, amit 10 perccel ezelőtt magad írtál le, és a képernyőn lévő kód egy nagy vödör érett hányásra emlékeztet, izgő-mozgó zöld dollárjelekkel és egymást kibogozhatatlanul hívó spagetti-metódusokkal, az annak a jele, hogy abba kéne már hagyni, nem?
- De.
- Köszönöm az interjút!
Failure is the default option

Ramiz

Quote from: kikuchiyo on 2009-07-10, 17:11:53
Újabb villáminterjú:

- Kedves kikuchiyo, ha már nem érted, amit 10 perccel ezelőtt magad írtál le, és a képernyőn lévő kód egy nagy vödör érett hányásra emlékeztet, izgő-mozgó zöld dollárjelekkel és egymást kibogozhatatlanul hívó spagetti-metódusokkal, az annak a jele, hogy abba kéne már hagyni, nem?
- De.
- Köszönöm az interjút!

:muhahah:
12 OZ MOUSE, 12 OZ MOUSE!!! 12 OZ MOUSE, 12 OZ MOUSE!!! 12 OZ MOUSE, 12 OZ MOUSE!!!

NLZ

Quote from: Ramiz on 2009-08-04, 15:20:39
Quote from: kikuchiyo on 2009-07-10, 17:11:53
Újabb villáminterjú:

- Kedves kikuchiyo, ha már nem érted, amit 10 perccel ezelőtt magad írtál le, és a képernyőn lévő kód egy nagy vödör érett hányásra emlékeztet, izgő-mozgó zöld dollárjelekkel és egymást kibogozhatatlanul hívó spagetti-metódusokkal, az annak a jele, hogy abba kéne már hagyni, nem?
- De.
- Köszönöm az interjút!

:muhahah:
+1
[reserved]

Kvikveg

Quote from: kikuchiyo on 2009-07-10, 17:11:53
Újabb villáminterjú:

- Kedves kikuchiyo, ha már nem érted, amit 10 perccel ezelőtt magad írtál le, és a képernyőn lévő kód egy nagy vödör érett hányásra emlékeztet, izgő-mozgó zöld dollárjelekkel és egymást kibogozhatatlanul hívó spagetti-metódusokkal, az annak a jele, hogy abba kéne már hagyni, nem?
- De.
- Köszönöm az interjút!
:lul:
WARNING: module "coffee.exe" did not run correctly. Brain running in limited mode.
Do not meddle in the affairs of dragons for you are crunchy and taste good with ketchup.