Hirdetés
- Android alkalmazások - szoftver kibeszélő topik
- iPhone topik
- Nothing Phone (2) - több, mint elsőre látszik
- Mobil flották
- Poco F8 Ultra – forrónaci
- Google Pixel topik
- Huawei Watch D2 - nyomás utána!
- Xiaomi 15 - kicsi telefon nagy energiával
- Apple Watch Ultra - első nekifutás
- Samsung Galaxy S24 - nos, Exynos
Új hozzászólás Aktív témák
-
Karma
félisten
Egyébként meg Zwiebelnek ki kell találnia, hogy most mi a téma.
Ha a C++ nyelv, akkor a teríték egyszerű: a C nyelv - az alapok (típus, változó, struktúra) minden járulékos dologgal (mint a preprocesszor, pointerek); majd a C++ újításai és változásai (nem feltétlen minden implikációval, tehát egy template metaprogramozást biztos nem kavarnék ide
); meg persze az STL. Ezután jöhetne az OOP, most hogy van egy stabil(nak tűnő) alap, van mire építkezni normális programokat is akár.A b) variáció meg kapásból az OOP körbejárása, de ez meg a C/C++ nyelv ismerete nélkül sokaknak csak hablaty lenne. Az üzeneteket olvasva talán az első tűnik jobbnak és népszerűbbnek
.De ha már amúgy is hobbit keresek, lehet hogy megpróbálom az imperatív programozás elméletét cikk(ek)ben leírni. Így nem csak a számat jártatnám

-
Karma
félisten
A cikkben egyetlen fordítóprogram se került elő, de erről már szóltam a korrektúráim egyikében. Ha ezt nézzük, akkor már sokkal hamarabb is elágazhatunk: imperatív vagy deklaratív programozási nyelv; lineáris, procedurális, moduláris, OO, AO, adatvezérelt, szerződés-alapú, funkcionális, logikai, korlátos programozás, satöbbi

-
Karma
félisten
Ez eddig még csak procedurális programozás se volt.
Azért innen az OOP-be ugrani, huhh, az mélyvíz.
Ismét javaslom a C-t, mint célt."Mondjuk én egy olyan sorozatot is szívesen látnék, ahol nem programozási nyelvet magyaráznak, hanem néhány feladat nyelvfüggetlen megoldását veséznék ki, programozási gondolkozást (logikát) bővítve. (remélem ez a vége nem volt értelmetlen
)"Én értettelek, és ez tényleg egy olyan dolog, amit 1) sehol se tanítanak 2) sok helyen jól jönne - többek között azért is, mert mindig, amikor jönnek hozzám a delikvensek, hogy szeretnének megtanulni programozni, nem tudok mit adni a kezükbe. Nem hiszek abban, hogy sok jó sülne ki abból, ha valakinek csak tisztán egy nyelvet adunk a kezébe.
-
Karma
félisten
Sőt. Az OOP-ben elég kritikus.
Zwiebel: Remek elképzelés, hogy az átlagember által is emészthetően akarod előadni a dolgot, de ezzel három baj van:
1) A konzisztencia hiányát továbbra se engedheted meg.
2) Főleg a ténybeli hibákat nem.
3) A programozás egzakt tudomány.Nem lenne jobb talán, ha a sima C-ről írnál inkább?
Apropó, az a vállalt feladatod, hogy a metódus fogalmát megértesd az emberekkel.
-
Karma
félisten
"gyors, hatékony" Hát, nem igazán. De...
Az ellenérv vele szemben az, hogy bár a RAD fejlesztésnek megvannak a nyilvánvaló előnyei (többek között az, hogy bárki gyorsan tudja ontani a programokat magából), a karbantarthatóság meg az átláthatóság tapasztalatlan programozó esetén kritikán aluli lehet.
-
Karma
félisten
Na, végére értem a cikknek, már csak egy utolsó kritika

""Hello World! " : Programunk ezt a szöveget fogja kiírni a képernyőre. A cout << után kell beírni, de mindenképpen " " jelek közé kell tenni, különben a program nem tudja jól értelmezni. Ami még fontos, hogy ne írjunk ékezetes betűket, mert azok helyén a program egy kérdőjelet fog elhelyezni, és így nem lesz érthető a szöveg."
Ez csak attól függ, hogy milyen kódolással mented le a forrásfájlt. Ha a parancssoréval megegyezően, akkor nem lesz itt gond. Most nem tudom pontosan melyik az, gyanítom a CP1250, mert nincs Windowsom kéznél.
-
Karma
félisten
Bocs, az IDE nevében nincs smiley, Code:: Blocks helyesen (szóköz nélkül persze).
Még valami, átértem a második oldalra:
"<iostream> :Ez az I/O függvények alapját "adja meg". Ezeket mindig < , > jelek közé kell tenni."
Nem. Ha a saját headerjeid vannak, akkor ""-be kell tenni - ekkor a fordító először az aktuális könyvtárban keres, majd utána nézi meg a többi include könyvtárat. A <> verziónál azonnal a rendszer (és egyéb beállított) könyvtárakban keres.
"using namespace std : Ez az std névterület lehívása."
Nem. A using kulcsszóval azt éred el, hogy ha egy nevet nem tud feloldani a fordító, akkor automatikusan megnézi az std névtérben is. Ha nem használod ezt (szoktak is miatta beszólni, olyan ez, mint Java-ban a * importálása), akkor a scope operátorral tudsz hivatkozni a névtér tagjaira, tehát pl. std::cout, std::cin, std::endl.
"cin.get(); : Ezzel a paranccsal tudunk várni egy billentyű leütésére"
Ez nem parancs, hanem metódushívás.
"A zárójelek azért kellenek, hogy ha
valamilyen paramétert megadunk a függvénynek akkor azzal fogja végrehajtani
magát. Később még erre is visszafogunk térni."Nem, a zárójelek azért kellenek, hogy függvényhívás legyen belőle. Nélküle fordítási hiba lenne (mit csináljon szerencsétlen fordító egy függvénypointerrel?)
-
Karma
félisten
"Először is kezdjük azzal, hogy mint minden más programozási nyelvnek ennek is vannak úgynevezett fordító programjai, melyek közül az ingyenesek és talán legismertebbek:
- Dev-C++
- Microsoft Visual C++ 2008 express edition"Nem nyert. Ezek fejlesztőkörnyezetek (IDE), a fordító az előző esetben a gcc, az utóbbi esetben a Microsoft C Compiler (bár ez utóbbi nevében nem vagyok biztos). Mind IDE-ből, mind fordítóprogramból van több is, előbbire példa még a Code:
locks, az Eclipse CDT, a NetBeans, az utóbbira meg a BSD-féle cc, a Sun saját fordítója."{ : a program törzsének a kezdetét jelenti, tehát ez után fog jönni a program kódja."
Nem. C-ben nincs olyan, hogy "a program törzse", ez nem Pascal. A main függvény definíciójára gondolsz pillanatnyilag. De a blokk nem csak erre jó.
vidékiürge: Továbbra is kitartok amellett, amit a Symbian programozás topikban írtam. Ha S60-ra akarsz programozni, és nem tudsz C++-ul, ne állj neki, inkább nézd meg a PyS60-at. A Python nyelv sokkal könnyebb, a PyS60 meg egy csomó bonyolult és értelmetlen koncepciót tesz tök egyszerűvé.
-
Karma
félisten
eziskamu, mephi666: Az int visszatérési érték azért kell, mert ez a szabvány. Ne csináljunk a C++-ból is Internet Explorert. Egyébként a Linux tényleg ezt használja a futási hiba jelzésére, amikor egyik program hívja a másikat.
A main függvény teljes szignatúrája egyébként:
int main(int argc, char** argv)
Beaver: "az #include fejfájlok becsatolására alkalmas, amely ahogy említetted fv. fejléceket, típus és objektumdefiníciókat, stb. tartalmazhat."
Nem! A header fájlok csak deklarációkat tartalmaznak, a definíciók különálló fordítási egységekben (azaz .cpp fájlokban) vannak. Ha a definíció is ott lenne, akkor pillanatok alatt elszállna a linkelés a többszörös definiálás miatt (feltéve, hogy két forrásfájl is beinclude-olja a fejlécet).
Egyébként a függvénydefiníciók után sincsen pontosvessző.
vidékiürge: "Talán még azt kérdezném, hogy Symbian-ra ez a programozási nyelv jó vagy nem jó?"
Nem akarlak nagyon elkeseríteni, de ahhoz, hogy a SymbianC++-t elkezdd, folyékonyan kell beszélned a hagyományos C++-t, majd meg kell tanulnod egy abszolút más működést és nyelvet. Ez nem olyan "leülök és gyorsan megtanulom" kategória. (Symbian lett a szakmám, igen jól ismerem.)
Zwiebel: A kezdeményezés jó, de én nem így közelíteném meg. A "beírom mert ezt olvastam, puff, működik" megközelítéssel pont a legfontosabb elem marad ki: nem értik meg az olvasók az elméleti hátteret, amivel jól lábon lőhetik magukat. Én szólnék azért a fordítási folyamatról, az egységekről, a header fájlok szerepéről, nomeg magáról a nyelvről is pár szót. Főleg hogy van egy-két homály ránézésre itt is.
A cikket még elolvasom párszor, hátha találok benne olyan hibát, amit előttem nem jeleztek.

Új hozzászólás Aktív témák
- One otthoni szolgáltatások (TV, internet, telefon)
- Mibe tegyem a megtakarításaimat?
- EAFC 26
- Luck Dragon: Asszociációs játék. :)
- Milyen notebookot vegyek?
- PlayStation 5
- Debian GNU/Linux
- Android alkalmazások - szoftver kibeszélő topik
- Counter-Strike: Global Offensive (CS:GO) / Counter-Strike 2 (CS2)
- Arc Raiders
- További aktív témák...
Állásajánlatok
Cég: ATW Internet Kft.
Város: Budapest
Cég: BroadBit Hungary Kft.
Város: Budakeszi



.
)"
locks, az Eclipse CDT, a NetBeans, az utóbbira meg a BSD-féle cc, a Sun saját fordítója.



