- Xiaomi 15 - kicsi telefon nagy energiával
- Sony Xperia 1 VII - Látod-e, esteledik
- Samsung Galaxy S23 és S23+ - ami belül van, az számít igazán
- Telekom mobilszolgáltatások
- Milyen okostelefont vegyek?
- iPhone topik
- Samsung Galaxy A56 - megbízható középszerűség
- Xiaomi Redmi Note 5 Global
- Melyik napszakban merül majd le az iPhone 17 Air?
- Vivo X200 Pro - a kétszázát!
Hirdetés
Ú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
- MSI MAG 341CQP QD-OLED 34" UWQHD ívelt Gaming monitor + több mint 3 év garancia
- Sony PlayStation 5 Media Remote eladó
- Eladó Xiaomi Mi 10 5G 8GB / 128GB Twilight Gray Szinte karcmentes!
- iPad Pro 12.9" 4.Gen 2020 1TB Space Gray Wifi cellular, Garanciával, üzletből
- Dell Latitude 7420, 14" 4K IPS, I7-1185G7 CPU, 16GB DDR4, 512GB SSD, W11, Számla, 1 év garancia ( ol
- Samsung Galaxy S23 Ultra 256GB Kártyafüggetlen 1Év Garanciával
- Apple iPhone 11 64GB, Kártyafüggetlen, 1 Év Garanciával
- Konzol felvásárlás!! Xbox Series S, Xbox Series X
- BESZÁMÍTÁS! Asus A620M R5 7500F 32GB DDR5 512GB SSD RTX 2080 Ti 11GB Zalman M4 FSP 700W
- Nvidia Quadro P400/ P600/ P620/ P1000/ T400/ T600/ T1000 - Low profile (LP) + RTX A2000 6/12Gb
Állásajánlatok
Cég: FOTC
Város: Budapest