Jump to content

M2G

Moderators
  • Posts

    1838
  • Joined

  • Last visited

  • Days Won

    31

Everything posted by M2G

  1. The theme of GoingNative 2013 is decidedly pragmatic - to inform and educate the global C++ developer community with the latest information about ISO C++11 and draft C++14. From libraries to compilers, you'll learn from some of the world's best C++ speakers (and rising stars) and subject matter experts (well, C++ superheroes, to be precise). This year is all about deep and practical knowledge for the practicing C++ developer. There will be three full days of excellent sessions and panels. Please join us in Redmond, Washington, September 4 - 6, 2013. Come learn about the present and near future of modern, standard C++. You'll also learn about VC++ vNext and C++ on Microsoft's platforms. There's a lot to talk about! You'll want to be in the room for this three day C++ festival. See you there! ***This event will be LIVE STREAMED on the homepage of Channel 9 (http://channel9.msdn.com)*** We will accept questions from the virtual audience (simply type into the textbox under the multi-platform streaming media player). However, questions from attendees in the room will have priority. We do not guarantee that your questions will be answered. That said, please ask them! The Cast Bjarne Stroustrup designed and implemented the C++ programming language. To keep C++ a stable and up-to-date base for real-world software development, Bjarne has stuck with its ISO standards effort for 20+ years (so far). Andrei Alexandrescu is a researcher, software engineer, and author. He wrote three best-selling books on programming (Modern C++ Design, C++ Coding Standards, and The D Programming Language) and numerous articles and papers on wide-ranging topics from programming to language design to Machine Learning to Natural Language Processing. Andrei holds a PhD in Computer Science from the University of Washington and a BS in Electrical Engineering from University "Politehnica" Bucharest. He works as a Research Scientist for Facebook. Herb Sutter is a leading authority on software development. He is the best selling author of several books including Exceptional C++ and C++ Coding Standards, as well as hundreds of technical papers and articles, including the essay "The Free Lunch Is Over" which coined the term "concurrency revolution" and its recent sequel "Welcome to the Jungle" on the end of Moore's Law and the turn to mainstream heterogeneous supercomputing from the cloud to 'smartphones.' Herb has served for a decade as chair of the ISO C++ standards committee, and is a software architect at Microsoft where he has been the lead designer of C++/CLI, C++/CX, C++ AMP, and other technologies. Scott Meyers is one of the world's foremost authorities on C++. He wrote the best- selling Effective C++ series (Effective C++, More Effective C++, and Effective STL); published and maintains the annotated training materials Overview of the New C++ (C++11/14) and Effective C++ in an Embedded Environment; is Consulting Editor for Addison Wesley's Effective Software Development Series, and, with Herb Sutter and Andrei Alexandrescu, is a principal in C++ and Beyond. He has a Ph.D in Computer Science from Brown University. He's currently working on a new book, Effective C++11/14, which he hopes to publish in early 2014. Chandler Carruth leads the Clang team at Google, building better diagnostics, tools, and more. Previously, he worked on several pieces of Google's distributed build system. He makes guest appearances helping to maintain a few core C++ libraries across Google's codebase, and is active in the LLVM and Clang open source communities. He received his M.S. and B.S. in Computer Science from Wake Forest University, but disavows all knowledge of the contents of his Master's thesis. He is regularly found drinking Cherry Coke Zero in the daytime and pontificating over a single malt scotch in the evening. Michael Wong is the IBM and Canadian representative to the C++ Standard and OpenMP Committee and is the co-author of a number C++0x/OpenMP features including generalized attributes, extensible literals, inheriting constructors, weakly ordered memory models, and explicit conversion operators. He is the past C++ team lead to IBM's XL C++ compiler and has been designing C++ compilers for fifteen years. His current research interest is in the area of parallel programming, C++ benchmark performance, object model, generic programming and template metaprogramming. He holds a B.Sc from University of Toronto, and a Masters in Mathematics from University of Waterloo. Sean Parent is a principal scientist and software architect for Adobe's mobile digital imaging group. Sean has been at Adobe since 1993 when he joined as a senior engineer working on Photoshop and later managed Adobe's Software Technology Lab. In 2009 Sean spent a year at Google working on Chrome OS before returning to Adobe. From 1988 through 1993 Sean worked at Apple, where he was part of the system software team that developed the technologies allowing Apple's successful transition to PowerPC. Stephan T. Lavavej joined the Visual C++ Libraries team in January 2007. He works with Dinkumware to maintain Microsoft's C++ Standard Library implementation. He originally joined Microsoft in July 2004, after graduating from Caltech, and worked on Outlook 2007 Search. His name is pronounced "Steh-fin Lah- wah-wade", or just "STL". His favorite data structures are the vector and the suffix tree, and his favorite algorithms are Huffman coding and the Burrows- Wheeler Transform. Deon Brewis is a Principal Software Design Engineer on the C++ compiler frontend team. He designed and implemented the C++ language extensions for the Windows Runtime, the 'await' feature in VC++, and other frontend work Eric Brumer is a software developer on the Visual C++ compiler team, specializing in code generation, optimization and performance of native code. For the last several years Eric has focused on auto-vectorization, auto-parallelization, and taking advantage of modern processor capabilities. Eric studied Electrical and Computer Engineering at Cornell University with a focus on CPU design. Outside of work, life revolves around family and friends, cooking and homebrewing, and when time affords it, Eric’s passion for technical writing gets the best of him. sursa
  2. Du-te la settings -> compiler -> directories -> compiler si vezi daca ai stata acolo calea catre librariile din mingw. Iti da eroarea aceea pentru ca nu gaseste fisierul de librarie iostream.h. Sunt necesare sa fie incluse functii din acel fisier deoarece cin si cout sunt definite acolo. Acel fisier este responsabil cu definirea funtiilor de intrare/iesire. Erorile nu sunt ca sa incurce programatorul ci ca sa-l ajute. Iti explica acolo ca nu gaseste fisierul iostream.h. nota: Nu mai face post dublu sau triplu, foloseste butonul de edit daca ai ceva de adaugat.
  3. Cum crezi ca te putem ajuta cand scrii ca iti da erori? Da un exemplu de eroare, un printscreen. Altfel nu avem cum sa ne dam seama care e problema. Presupun ca ai instalat code blocks fara compilatorul mingw si cand incerci sa rulezi iti da eroare pentru ca nu gaseste un compilator. Pentru code blocks asta trebuie sa descarci: Download Code::Blocks from SourceForge.net In legatura cu visual studio, nu trebuie sa iei varianta din 2012. Cea din 2010 merge chiar bine pe xp.
  4. Ai incercat? A incercat un prieten pe IOS 6.1 + safari, a deschis pagina asta si nu a mers. Trebuie sa fie versiunea 6.0 de IOS? 6.1 nu? edit: merge pe messages
  5. Imi place cand zice If you want to move something (x) from a to b, only a computer scientist creates a copy of x, moves it to b and destroy the original
  6. M2G

    Fun stuff

    Vedeti o pizda bunaaa, paaaac. [o racheta]
  7. Te duc in settings->apps->all, cauti aplicatia care se deschide automat (in cazul tau nu stiu ce e, player, sound picker, ceva asemanator). O selectezi si o sa iti apara un buton cu clear defaults. Il apesi si o sa ai iar meniul acela in care este pus sa alegi cu ce aplicatie vrei sa realizezi taskul x. Testat pe android 4.1
  8. Poti sa incepi cu un mic proiect inceput aici pe RST. Uita-te la linkurile din semnatura mea. Momentan e suspendat pentru ca am cateva lucruri de facut in viata personala cam pentru inca o luna dar daca ai intrebari sau simti ca ai progresat mai mult decat este deja pus pe forum, scrie un post si continuam. Pana acum, chiar daca sunt peste 4 saptamani de cand nu a fost facut update la RST Academy, nu a zis nimeni nimic. Deci lumea vrea initial sa invete dar nu depune nici un efort sa o faca. Eu voi contiunua cu acest proiect fie ca este interes sau nu dar momentan nu am timpul necesar sa fac asta singur si fara implicarea altor membrii.
  9. Daca scrii un proiect pentru tine, nu conteaza. Sau conteaza, dar mai putin. Cand ajungi sa scrii cod impreuna cu altii sau cod open-source sau cod intr-o companie, conteaza mai mult decat crezi. Masina oricum "intelege" codul. Nu inteleg de unde conceptia asta ca un cod care nu arata bine este performant. Codul trebuie sa fie cat mai usor de inteles de catre oameni. Are mare dreptate omu ce zice acolo. Asta daca vrei sa scrii cod intr-un mod profi.
  10. Aici am vrut sa ajung. Daca vrei sa inveti de ce mai intrebi ce distro sa folosesti? Daca esti la inteput o sa o inveti pe aia pe care o instalezi deci e cam inutil sa intrebi. Alege ceva la care gasesti surpot mult online: Debian, Ubuntu, Fedora, OpenSUSE. Ubuntu, Kubuntu, Linux Mint sunt toate derivate din Debian. Nu prea conteaza distributia cand vrei sa inveti, toate sunt linux. La partea cu resursele modeste, poti instala orice distro vrei ca mai apoi sa iti schimbi mediul desktop. Poti alege Cinnamon, MATE, LXDE, Xfce care consuma mai putine resurse. Astea le poti instala dupa ce ai instalat distributia. Gasesti cu o cautare pe google cum sa faci asta. La login o sa poti sa schimbi mediul implicit desktop cu noul mediu instalat.
  11. Eu folosesc Fedora si imi place dar intrebarea adevarata este de ce vrei linux? Ce vrei sa faci pe el? Sa inveti? La ce vrei mai exact sa-l folosesti?
  12. M2G

    Va salut

    Daca faci treburi ilegale o sa ciugulesti un ban permanent. Citeste regulamentul si respecta-l. Bun venit.
  13. Videochat e o idee banala. Nu mai generaliza si deforma ceea ce am zis. Nu sunt hater si nu am nici un motiv pentru a apara interesele oricarei corporatii. De unde reiese din ce am zis eu ca marile corporatii nu fura deloc ideile? Ce am zis este ca la un asemenea nivel este necesar de mult timp doar pentru aprobari ale unei idei. Nu poti tu ca developer la facebook sa citesti ceva mail prin care 2 vorbesc despre ideea lor de videochat si a doua zi te apuci sa implementezi asta in facebook tu si cu echipa ta de maxim 10 oameni. Si nu sta nimeni sa verifice conversatii de nebun. Se face data mining si de acolo poate daca rasare ceva(vezi ce a zis si wildchild), se uita si un ochi uman. (In cazul unor mandate de la autoritati - sau fara mandat ceea ce ar fi infractiune si abuz). Cu toate astea, sa zici ca facebook si google au implementrat chatul video doar pentru ca au citit o conversatie dintre un roman si un francez e cel putin aberant. Poate daca ideea era ceva original dar videochat e ceva ce se face de ani buni si odata cu expansiunea pietei mobile era o necesitate pentru retelele de socializare sa implementeze un o astel de facilitate.
  14. Esti tot mai paranoia pe zi ce trece (si ieri ziceai de SecretService ca face SE cu noi). Sa fim seriosi, nu au implementat Google si Facebook videochat pentru ca ati vrut voi sa faceti o retea de socializare bazata pe videochat. Nu e de parca voi ati inventat chatul video si ei v-au furat ideea. In plus la o companie de asemenea nivele trebuie sa treaca mult timp si multe autorizari pana cand se ia decizia de a implementa un feature atat de amplu cum este chatul video. + timp pentru implementare + timp pentru testare. La google, cel putin, nu poti schimba valoarea unei variabile undeva atat timp cat nu ai aprobare de la superiori sa faci asta. (Si asta mi-a zis un intern de la Google.) On: In principiu se face data mining pe contentul din mail, nu sta acolo un Dorel sa va citeasca voua mailurile.
  15. Ai o singura iesire la internet, cea din router. In afara de asta ai 3 ip-uri locale care sunt manageriate de routerul tau. Practic ai o retea care are ca punct de acces acel router. In acea retea nu o sa poti sa ai 2 ip-uri identice. Dar in internet iesi pe o singura interfata (cablul care il bagi in router), astfel ca toate acele ip-uri locale sunt rutate catre ip-ul real.
  16. ti-am dat de 3 ori cartonas galben la care nu se cumuleaza punctele de avertisment ti-am explicat sa nu mai faci offtopic si posturi inutile si am zis-o frumos. Imi dai reply si ma injuri. pai adio prietene.
  17. Am specificat asta aici: https://rstforums.com/forum/72988-rsta-1-c-programming-language.rst Or sa se faca doar ca nu am timp sa ma ocup si sa caut sau sa concep exercitii. Sunt super ocupat pana pe la sfarsitul lui septembrie si incerc sa imi fac timp si pentru RST dar nu reusesc de fiecare data. Or sa fie si exercitii. O sa vorbesc cu nedo sau cineva care stie C sa vad daca poate sa ne ajute cu asa ceva. De asemenea, sugestiile trebuie puse aici: https://rstforums.com/forum/72777-rst-academy.rst Asta ca sa tinem threadurile cat mai curate posibil si bine organizate. Daca aveti sugestii de exercitii, triteti-mi un PM sau dati-mi add la id-ul din semnatura.
  18. Vinzi flori la gradinar? Ti-ai ales cel mai nepotrivit forum sa postezi asta. Si noi stim smecherii, ia uite: https://www.facebook.com/don.tito.5872 + 86.104.75.238 Have fun, lupilor.
  19. Suntem la iteratia 2. Pentru ca in topicul de intrebari - raspunsuri nu prea s-au pus intrebari din capitolul 3, saptamana asta continuam cu un numar mai mic de pagini pentru a putea sa mentinem un pas constant si sa nu merge prea repede. Asadar, in saptamana aceasta 05.08.2013 - 11.08.2013 vom parcurge capitolul 4 Chapter 4 - Functions and Program Structure Este mai putin de parcurs dar vreau sa ma asigur ca toata lumea a ajuns pana aici si ca intelege cat de cat cum functioneaza un program si cum se scrie unul simplu. Intrebati orice nu intelegeti din acest capitol in threadul RSTA 1/2 Intrebari - Raspunsuri : https://rstforums.com/forum/73427-rsta-1-2-intrebari-raspunsuri.rst#post475570
  20. Intrebari si raspunsuri pentru iteratia numarul 2: Chapter 4 - Functions and Program Structure Detalii aici: https://rstforums.com/forum/72988-rsta-1-c-programming-language.rst#post475571 Offtopic = Warn
  21. 1.1 Getting started Inca din prima propozitie, capitolul incepe cu un sfat pe care l-as da si eu oricui m-ar intreba cum poate sa invete programare sau un limbaj nou. Adica, sa scrie efectiv programe in limbajul respectiv. Poate ca multi dintre voi au fost descurajati de acest capitol deoarece se trece destul de repede la chestii putin mai complicate dar acest capitol este doar pentru a arata posibilitatile si pentru ca voi sa aveti o imagine mai clasa asupra ce inseamna programarea in C. Declaratiile de variabile, functiile, structurile de control si de repetitie sunt explicate mai detaliat in capitolele urmatoare. Programul clasic atunci cand inveti un nou limbaj este afisarea pe ecran a frazei "Hello World!". #include <stdio.h> main() { printf("hello, world\n"); } Intrucat cartea este veche, acest cod nu mai corespunde cu standardul C din zilele noastre asa ca o implementare corecta din punctul de vedere al standardului actual este: #include <stdio.h> int main() { printf("hello, world\n"); return 0; } Aflam ca fiecare program este format din funtii si variabile. Unde functiile reprezinta instructiuni care trebuie executate de catre procesor iar variabilele retin date care urmeaza a fi procesate cu ajutorul instructiunilor. Fiecare program trebuie sa aiba un punct de start (un punct de unde codul incepe sa se execute). Acest punct de start il reprezinta functia main. Functia main poate sa contina declaratii de variabile sau apelauri catre alte functii. Sa fac o mica comparatie: Pentru un program funtia main este ca si punctul de plecare intr-un traseu montan. Pleci dintr-un loc bine stiut si definit si poti sa ajungi in mai multe locuri(prin trasee alternative) in functie de deciziile pe care le iei pe parcurs. Dupa care te intorci la punctul de plecare pentru a pleca spre cabana. Cam asta se intampla si cu functia main. Se definesc instructiunile care urmeaza sa fie executate de procesor, se fac apeluri la alte functii care inglobeaza instructiuni iar la final se ajunge tot in functia main la secventa de cod return 0; care reprezinta incheierea cu succes a programului.Prima linie de cod din exemplul de mai sus reprezinta includerea fisierului stdio.h in programul nostru. Acest fisier este un fisier de librarie si contine functiile necesare pentru afisarea pe ecran al mesajului nostru(pe langa asta contine numeroase alte functii cu care se pot realiza operatii de input/output - I/O ). Pentru a afisa in mesaj pe ecran, se face un apel la functia prinf. apelul functiilor se face folosind numele lor si o lista de argumente. Functia va afisa pe ecran mesajul introdus si va returna numarul de caractere care au fost scrise cu succes pe ecran. Puteti sa va ganditi la apelul unei functii ca la un storcator de fructe. Lista argumentelor reprezinta inputul (fructele care le pui in stocator) iar iesirea reprezinta sucul (rezultatul procesarii datelor de intrare). Urmatorul program prezentat este un convertor de grade celsius - fahrenheit. Acesta este mai complicat intrucat foloseste variabile si instructiuni de control cum este bucla while. Acestea vor fi discutate ulterior, dupa cum am mai spus. #include <stdio.h> /* print Fahrenheit-Celsius table for fahr = 0, 20, ..., 300 */ main() { int fahr, celsius; int lower, upper, step; lower = 0; /* lower limit of temperature scale */ upper = 300; /* upper limit */ step = 20; /* step size */ fahr = lower; while (fahr <= upper) { celsius = 5 * (fahr-32) / 9; printf("%d\t%d\n", fahr, celsius); fahr = fahr + step; } } In momentul prezentarii acestui exemplu aflam ce sunt comenturile in cod si ca acestea sunt ignorate de catre compilator in momentul compilarii. Sunt doar notite pentru programator. Tot aici aflam ca pentru a folosi o variabila aceasta trebuie declarata (in general la inceputul unei functii). Declarea se face folosind tipul variabilei si un nume. Exemplu: int variabilaTipIntreg float variabilaTipVirgulaMobila char variabilaTipCaracter Alegerea tipului variabilelor depinde de datele care urmeaza sa fie stocate in ele.(Numere intregi, numere cu virgula, caractere) Se mai specifica cateva lucruri despre functia printf si modul in care aceasta se foloseste. printf("%d\t%d\n", fahr, celsius); Functia printf este o functie care printeaza pe ecran text formatat astfel ca primul parametru este un sir de caractere care specifica cum anume textul afisat sa fie formatat. Se folosesc sintaxele speciale %d - pentru a printa un numar intreg (d vine de la decimal), %f - pentru a printa un numar cu firgula (f vine de la float), %c pentru a printa un caracter. De asemenea se poate si "aranja" modul in care textul este afisat. printf("%3d %6d\n", fahr, celsius); %3d reprezinta afisarea variabilei fahr pe un spatiu(latime) de 3 caractere pe cand %6d printeaza variabila celsius pe o latime de 6 caractere. argumentele care vin dupa sirul de caractere pentru formatare reprezinta variabilele ale caror valori vreti sa fie afisate. Ordinea in care acestea sunt scrise este importanta, primul caracter %d va fi inlocuit de valoarea primei variabile, urmatoare aparitie a %tip_formatare va corespunde celui de al treilea parametru al functiei(al doilea parametru dupa stringul de formatare) si asa mai departe. In continuare sunt prezentate cateva lucrui despre aritmetica care nu o sa le descriu aici pentru ca sunt destul de clare. Instructiunea repetitiva for (descrisa in capitolul 3) Aflam ceva interesant despre define-uri si "magic numbers" (numere care apar in cod ca si numere, nu ca si variabile - asta ingreuneaza intretinerea codului si poate produce buguri). Se specifica macroul #define (Mai multe despre acesta in capitolele viitoare). Ideea unui #define este ca defineste ceva existent ca un concept nou. Exemplu: // defineste pi ca fiind 3.14 #define pi 3.14 //se poate folosii ca: float piPlusUnu = pi + 1; // Aici se cauta pi, se determina ca este 3.14 si se inlocuieste in expresie // echivalent cu: float piPlusUnu = 3.14 + 1; Mai departe se vorbeste despre functia getchar si EOF si se dau exemple despre cum acestea pot sa fie folosite pentru a identifica numarul de caractere, cuvine sau linii citite. Se mai dau exemple de folosire a unor multimi (array) si functii. Nu intru in detalii, se vor clarifica mai tarziu. In subcapitolul 1.8 aflam despre call by value si ca variabilele transmise functiilor sunt transmise prin valoare, adica este transmisa functiei valoarea stoca in variabila respectiva iar orice modificare asupra variabilei respective in corpul functiei nu va afecta valoarea variabilei din exteriorul funtiei. Cu alte cuvine, se ia valoarea variabilei, se creaza o copie a ei si se foloseste in functie fara a afecta valoarea variabilei originale. Nota: Aici pot sa intervina probleme de performata daca se executa multe apeluri de functii prin valoare intrucat se copiaza de fiecare data valorile intr-o alta zona de memorie. In subcapitolul 1.9 se explica cum se pot forma sirusi de caractere folosind multimi de char - caractere independente. Este si un desen care exemplifica destul de bine cum aceste siruri de caractere se formeaza. Discutam ulterior daca nu va e clar. In capitolul 1.10 sunt explicate variabilele externe si vizibilitatea acestora in raport cu functiile din program. Ca un scurt overview, variabilele care sunt declarate intr-un bloc de cod sunt vizibile in blocul respectiv si in toate blocurile de cod care sunt incluse in acel bloc. Exercitiile care sunt propuse la sfarsitul capitoluli mi se par cam grele pentru cat s-a parcurs in acest capitol, poate revenim la ele mai tarziu. Bun, cine continua cu review la capitolele 2 si 3?
  22. Nu-i problema cat se posteaza in threadurile astea. Parerea mea e ca daca sunt mai multe intrebari, cu atat mai bine. O sa inteleaga toata lumea mai bine. Deci chiar incurajez lumea sa posteze intrebari. Sa nu mai continuam cu asta ca murdarim threadul. Continuati dar cu intrebari din carte, nu altceva. Intrebarile si sugestiile de genu va rog sa le puneti aici: https://rstforums.com/forum/72777-rst-academy.rst
  23. Acest thread este de intrebari si raspunsuri. O sa fac unul in seara asta cu review pentru primele 3 capitole unde scriem ce am invatat de acolo. De ce zici ca nu te-a ajutat foarte mult? E topic de intrebari. Daca nu intelegi ceva, de ce nu intrebi? Cu mentalitatea asta nu o sa faci nimic in domeniul asta. Nu o sa stea nimeni sa te invete ca la gradinita. Ia si citeste primele 3 capitole si exerseaza. Cand nu intelegi ceva, intrebi aici sau cauti pe internet. Daca intrebi, ti se va raspunde dupa cum ai vazut. Trebuia sa fac topicul de review ieri seara dar nu am avut timp pentru ca am fost ocupat cu alte chestii din viata personala. Stau la calculator peste 14 ore pe zi in fata codului si testelor si multe altele. Suntem oameni si noi asa ca puneti osu daca vreti sa invatati. Aveti tot sprijinul nostru si va raspunde la intrebari, ba mai mult facem si un review despre ce s-a invatat in capitolele precedente. Mai mult nu avem ce face. Nu poti sa stai pe scaun si sa iti bage cineva cunostiinte in cap. Trebuie sa citesti si tu si sa exersezi. Ne vedem diseara cu threadul de review si incerc sa mai raspund de aici la intrebari la care nu s-a raspuns.(daca sunt)
×
×
  • Create New...