Javasta kun puuttuu precompiler kokonaan niin miksei definen ja typedefin tilalle ole rakennettu mitään? Jos esimerkiksi pitää tulostaa paljon tekstiä niin
#define NEWLINE \n
lähdekoodin alussa olisi varsin kiva juttu! Muuten joutuu kutsumaan System.out.println aika moneen kertaan.
Miksei Javassa ole defineä?
14
2720
Vastaukset
- limanuljaskalle
Hohhoijaati. älä kuse ohjelmakoodeeille.
kakissa on rajoteensa ja Tietyt tutvallisuus jutut. koetapas esim. google hakua "c preprocessor hell" ja nauti!
Sen jälkeen ehkä ymmärrät, miksi näitä ei otettu javaan mukaan..- Anonyymi
Ei liity mitenkään avaukseen.
- Anonyymi
code_red kirjoitti:
Liittyy hyvinkin keskeisesti
Aivan yhtä paljon kun rintaliiviesi koko.
- Anonyymi
Copypastaamaninen on hyvin yksinkertaista.
- Anonyymi
Mielestäni \n on nopeampi kirjoittaa kuin huutaa NEWLINE.
System.out.println:n saa taas nopeasti kirjoittamalla sout ja painamalla tabulaattoria.- Anonyymi
En tiedä miten on nykyisin mutta joskus ennen \n (newline) ei toiminut Windowsissa jossa sen pitää olla \r (return) ja tuo ei taas toimi Linuxissa ja Macissa. Toisaalta nuo makrot luovat enemmän ongelmia kuin ratkovat niitä. Olen joskus niitä käyttänyt paljonkin C kielen kanssa ja lopputulema on se että koodi ei ole sellaisenaan uudelleenkäytettävissä muissa projekteissa. Makroja ei pitäisi käyttää siitä syystä ollenkaan vaan käyttää standardoitua kieltä aina ja poikkeuksetta. Itseasiassa jopa typedef on uskomattoman typerä idea juuri siksi että koodia ei voi sellaisenaan uudelleenkäyttää. Ainoan poikkeuksen luo tuollainen NEWLINE makro koska se käsittelee tulostettavaa tekstiä jota ei ole tarkoitus käyttää missään muualla uudestaan. Mutta ongelma on ratkaistavissa yhden ylimääräisen muuttujan avulla.
- Anonyymi
Anonyymi kirjoitti:
En tiedä miten on nykyisin mutta joskus ennen \n (newline) ei toiminut Windowsissa jossa sen pitää olla \r (return) ja tuo ei taas toimi Linuxissa ja Macissa. Toisaalta nuo makrot luovat enemmän ongelmia kuin ratkovat niitä. Olen joskus niitä käyttänyt paljonkin C kielen kanssa ja lopputulema on se että koodi ei ole sellaisenaan uudelleenkäytettävissä muissa projekteissa. Makroja ei pitäisi käyttää siitä syystä ollenkaan vaan käyttää standardoitua kieltä aina ja poikkeuksetta. Itseasiassa jopa typedef on uskomattoman typerä idea juuri siksi että koodia ei voi sellaisenaan uudelleenkäyttää. Ainoan poikkeuksen luo tuollainen NEWLINE makro koska se käsittelee tulostettavaa tekstiä jota ei ole tarkoitus käyttää missään muualla uudestaan. Mutta ongelma on ratkaistavissa yhden ylimääräisen muuttujan avulla.
Sehän riippuu siitä mitä haluaa. Tuo \r (carriage return) palauttaa kursorin rivin alkuun ja \n (line feed) siirtää kursorin alas, mutta *nix-järjestelmissä myös lisäksi palauttaa kursorin rivin alkuun. Yhdistelmä \r\n tekee Windowsissa molemmat. https://en.wikipedia.org/wiki/Newline
- Anonyymi
Anonyymi kirjoitti:
En tiedä miten on nykyisin mutta joskus ennen \n (newline) ei toiminut Windowsissa jossa sen pitää olla \r (return) ja tuo ei taas toimi Linuxissa ja Macissa. Toisaalta nuo makrot luovat enemmän ongelmia kuin ratkovat niitä. Olen joskus niitä käyttänyt paljonkin C kielen kanssa ja lopputulema on se että koodi ei ole sellaisenaan uudelleenkäytettävissä muissa projekteissa. Makroja ei pitäisi käyttää siitä syystä ollenkaan vaan käyttää standardoitua kieltä aina ja poikkeuksetta. Itseasiassa jopa typedef on uskomattoman typerä idea juuri siksi että koodia ei voi sellaisenaan uudelleenkäyttää. Ainoan poikkeuksen luo tuollainen NEWLINE makro koska se käsittelee tulostettavaa tekstiä jota ei ole tarkoitus käyttää missään muualla uudestaan. Mutta ongelma on ratkaistavissa yhden ylimääräisen muuttujan avulla.
Windowsissa käytetään \r\n.
C# on java paremmin toteutettuna.
- Anonyymi
Voit aina kehitellä oman preprocessorisi joka parsettaa koodisi ja prosessoi #define direktiivillä olevat statementit. Prosessoitu lähdekoodi menee Java-kääntäjälle. Helppoa.
- Anonyymi
code_red kirjoitti:
Ja aina voi kehittää oman ohjelmointikielen, jossa on preprosessori. Helppoa :)
Kuinka paljon ihmiset noin yleensä välttelevät seuraasi. Minua ainakin oksettaa teikäläinen siinä määrin että oli pakko kysyä.
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Nurmossa kuoli 2 Lasta..
Autokolarissa. Näin kertovat iltapäivälehdet juuri nyt. 22.11. Ja aina ennen Joulua näitä tulee. . .593225Vanhalle ukon rähjälle
Satutit mua niin paljon kun erottiin. Oletko todella niin itsekäs että kuvittelet että huolisin sut kaiken tapahtuneen472921Maisa on SALAKUVATTU huumepoliisinsa kanssa!
https://www.seiska.fi/vain-seiskassa/ensimmainen-yhteiskuva-maisa-torpan-ja-poliisikullan-lahiorakkaus-roihuaa/15256631242749Mikko Koivu yrittää pestä mustan valkoiseksi
Ilmeisesti huomannut, että Helenan tukijoukot kasvaa kasvamistaan. Riistakamera paljasti hiljattain kylmän totuuden Mi3541837- 711104
Ensitreffit Hai rehellisenä - Tämä intiimiyden muoto puuttui suhteesta Annan kanssa: "Meillä ei..."
Hai ja Anna eivät jatkaneet avioliittoaan Ensitreffit-sarjassa. Olisiko mielestäsi tällä parilla ollut mahdollisuus aito101091Purra hermostui A-studiossa
Purra huusi ja tärisi A-studiossa 21.11.-24. Ei kykene asialliseen keskusteluun.193991- 44839
Miksi pankkitunnuksilla kaikkialle
Miksi rahaliikenteen palveluiden tunnukset vaaditaan miltei kaikkeen yleiseen asiointiin Suomessa? Kenen etu on se, että103835Joel Harkimo seuraa Martina Aitolehden jalanjälkiä!
Oho, aikamoinen yllätys, että Joel Jolle Harkimo on lähtenyt Iholla-ohjelmaan. Tässähän hän seuraa mm. Martina Aitolehde26830