Archief - [PROG]C++ Eerste probeersel

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

Holy Paladin

Legacy Member
Tyfius zei:
Over DAE zijn al genoeg discussies geweest. Ik hoop voor jou dat je er echt tijd wil insteken om veel na de lessen te doen en zelf bij te leren en niet verwacht dat je na je DAE opleiding meteen je droomjob te pakken hebt.
ja, want in andere richtingen hebt ge wel direct die droomjob

[BAT] Hydra

Legacy Member
Holy Paladin zei:
ja, want in andere richtingen hebt ge wel direct die droomjob

De kans dat je later werk vindt in die sector is gewoon kleiner dan in andere sectoren. Voor de meeste andere richtingen is die kans groter.

Holy Paladin

Legacy Member
en jullie zijn de enige die zich daarvan bewust zijn?
en daarom dat er elke keer gesuggereerd moet worden dat ge na de lessen er nog moet aan werken? no shit, dat zeggen ze zelf al genoeg hoor

killgore

Legacy Member
jodeman zei:
het is gewoon de debugger dat de magic doet vind ik :).

echt, de debugger van Visual Studio in Eclipse en ge hebt de perfecte ontwikkelomgeving :).

De visual studio omgeving voor C++ is ook al vrij super hoor. Er zijn enkele dingen die ontbreken (refactoring :(). Maar dat is het dan ook over het algemeen. Project management e.d. gaan vrij vlotjes in visual c++.
Het enige échte nadeel imho is het gebrek aan mogelijkheid tot plugins.

Vich

Legacy Member
killgore zei:
De visual studio omgeving voor C++ is ook al vrij super hoor. Er zijn enkele dingen die ontbreken (refactoring :(). Maar dat is het dan ook over het algemeen. Project management e.d. gaan vrij vlotjes in visual c++.
Het enige échte nadeel imho is het gebrek aan mogelijkheid tot plugins.

Refactoring ontbreekt niet in de professionele versie van Visual Studio 2005 hoor! ('t is nog redelijk beperkt qua features, maar het is er wel!)
Verder is er ook nog de Visual Assist plugin voor VS, die onder andere een uitgebreide set aan refactoring features heeft:
http://www.wholetomato.com/products/featureRefactoring.asp
(die gebruiken wij op't werk ook)

killgore

Legacy Member
huh?

Refactoring zit bij mijn weten niet in de visual c++ pro :p.

MacK

Legacy Member
bij mijn weten kan je, in VS: standard editie, toch al een variabele hernoemen en dat die overal aangepast wordt. Alsook de naam van een klasse veranderen en dat dan overal wordt aangepast.

Dat zijn toch al een paar refactoring tools..

*edit* net even gekeken. De bovenvermelde zijn toch ook de enigste refactoring opties die ik vind. Verder ook nog opties om dingen in comment te zetten, en te indenteren

ng

Legacy Member
ich15 zei:
Hallo,

Ik ben sinds kort begonnen met het leren van C++
Ik heb me hiervoor het boek: "Aan de slag met C++" gekocht.
Nu ik heb zelf iets proberen te maken maar mijn programma Dev-C++ (www.bloodshed.net) geeft een foutmelding. Maar ik zie de fout niet meteen staan. Kunnen jullie mij mss helpen?

// Eerste programma; Jeroen Weymiens

#include <ionstream>
using namespace std;

int main()
{
string getal1, getal2;
int nummer1, nummer2;

cout << "Typ hier het eerste getal in" << endl;
getline( cin, getal1 );
cin.get();

cout << "Typ hier het tweede getal in" << endl;
getline( cin, getal2);
cin.get();
cout << "De som van deze twee getallen is: " << endl << endl;
cout << ( getal1 + getal2 ) << endl;

cout << " Druk op Enter om het programma af te sluiten";
cin.get();
return 0;
}


de foutmelding is dit:
http://img265.imageshack.us/img265/6743/cprobej0.jpg


Mvg,
Jeroen

Nog een opmerking voor als ge later met strings gaat werken.
Ge zijt #include <string> vergeten.

Zonder die regel werken strings niet.

Jeroen_HD

Legacy Member
bedankt voor de tips allemaal ^^

ik probeer nu een beetje te werken met die visual studio C++ maar waar zit de funtie compile & execute (of hoe het daar ook noemt)?

Deguchi

Legacy Member
ich15 zei:
bedankt voor de tips allemaal ^^

ik probeer nu een beetje te werken met die visual studio C++ maar waar zit de funtie compile & execute (of hoe het daar ook noemt)?

CTRL + F5. Ook wel te vinden onder het menu Debug als "Start Without Debugging"

3lb4rt0

Legacy Member
night ghost 128 zei:
Nog een opmerking voor als ge later met strings gaat werken.
Ge zijt #include <string> vergeten.

Zonder die regel werken strings niet.

#include <ionstream> moet #include <iostream> zijn + #include <string> is niet eens nodig wnnr je da compileerd met de g++ compiler geeft da helemaal geen fouten en werkt dat ook, net zoals da het bepalen van u grote van u array tijdens runtime enkel maar gaat met dynamisch geheugen ook niet waar is het gaat perfect zonder dynamisch geheugen.

killgore

Legacy Member
3lb4rt0 zei:
#include <ionstream> moet #include <iostream> zijn + #include <string> is niet eens nodig wnnr je da compileerd met de g++ compiler geeft da helemaal geen fouten en werkt dat ook, net zoals da het bepalen van u grote van u array tijdens runtime enkel maar gaat met dynamisch geheugen ook niet waar is het gaat perfect zonder dynamisch geheugen.

dat 2e is onmogelijk en dat eerste werkt soms wel maar is geen correcte code.

ng

Legacy Member
3lb4rt0 zei:
#include <ionstream> moet #include <iostream> zijn + #include <string> is niet eens nodig wnnr je da compileerd met de g++ compiler geeft da helemaal geen fouten en werkt dat ook, net zoals da het bepalen van u grote van u array tijdens runtime enkel maar gaat met dynamisch geheugen ook niet waar is het gaat perfect zonder dynamisch geheugen.

Shit man, leer toch eens een klein beetje zinnen bouwen.

Trouwens van laethem include het altijd en hij zal wel weten wat hij doet.
En ik vraag mij ook af waarom jij hier begint over arrays. Heeft totaal geen nut in deze thread.

Trouwens als je de code wilt verbeteren, quote aan de TS niet aan mij.

Tyfius

Legacy Member
Van Laethem?
EHB studenten? ^^

En ja, #include <string> is voor de g++ compiler niet nodig, maar bedenk ook dat de g++ naast de ISO/POSIX implementatie ook eigen extensies heeft.
Bvb:
Code:
void foo(int size)
{
  char array[size];
  /* Do something ... */
}
Compileert met de gcc compiler (C dus, geen C++) maar is geen standaard C. De C compiler van MS geeft hier bijvoorbeeld wel een foutmelding op. Net zoals bij zero-sized arrays en lege structures. Dit maar even ter illustratie, ik kan op dit moment niet nagaan of het bij C++ ook toegelaten is bij de andere compilers (MSVC, Borland...).

Om je code zo proper en portable mogelijk te houden is het dus aangeraden de standaard zoveel mogelijk te volgen en de extensies die 1 compiler ondersteund zo weinig mogelijk aan te spreken. Je kan natuurlijk in een project voor bepaalde onderdelen voorzien in een HAL en voor alles wat jouw code moet ondersteunen een andere implementatie te voorzien.

Tijdens het leren van een taal is het altijd aangeraden zoveel mogelijk de standaard te volgen. In de Franse les moest ik ook deftig Frans praten, terwijl in de regio Brussel bepaalde woorden andere betekenissen hebben of anders worden uitgesproken.
Besef echter wel dat de standaard niet overal ondersteund wordt en sommige dingen anders worden geïmplementeerd naargelang het OS.
De functie "tmpfile()" bijvoorbeeld gaat een tijdelijk bestand aanmaken. Onder Linux wordt dit aangemaakt in de map "/tmp" maar onder Windows wordt er geprobeerd dit bestand aan te maken in de map waar het uitvoerbaar bestand staat. Veelal dus in Program Files/Naam Van Uw Applicatie. Besturingssystemen die met een Limited User Account werken (zoals Vista) geven je hier echter geen rechten toe en de functie geeft dus een foutmelding weer.

killgore

Legacy Member
Tyfius zei:
En ja, #include <string> is voor de g++ compiler niet nodig, maar bedenk ook dat de g++ naast de ISO/POSIX implementatie ook eigen extensies heeft.
Bvb:
Code:
void foo(int size)
{
  char array[foo];
  /* Do something ... */
}
Compileert met de gcc compiler (C dus, geen C++) maar is geen standaard C. De C compiler van MS geeft hier bijvoorbeeld wel een foutmelding op. Net zoals bij zero-sized arrays en lege structures. Dit maar even ter illustratie, ik kan op dit moment niet nagaan of het bij C++ ook toegelaten is bij de andere compilers (MSVC, Borland...).

Heb je het nu over het feit dat er een variabele wordt gebruikt of de naam van die functie. Want een functienaam is een constante pointer & je kan die dus in principe omzetten naar een constant getal. Gaat bij mijn weten tegen geen enkele c++ regel in, het is gewoon nogal rare code :). edit: en ik vind het dus maar logisch dat ms een fout werpt bij deze.

En ik denk dat de threadstarter ondertussen zot wordt :p.

Tyfius

Legacy Member
Tyfius zei:
Bvb:
Code:
void foo(int size)
{
  char array[foo];
  /* Do something ... */
}
Compileert met de gcc compiler (C dus, geen C++) maar is geen standaard C. De C compiler van MS geeft hier bijvoorbeeld wel een foutmelding op. Net zoals bij zero-sized arrays en lege structures. Dit maar even ter illustratie, ik kan op dit moment niet nagaan of het bij C++ ook toegelaten is bij de andere compilers (MSVC, Borland...).
Even uitgevoerd met -pedantic:
Code:
jensen@atlantis:~/Desktop/t$ g++ vb.cpp -o vb_2 -pedantic
vb.cpp: In function ‘void foo(int)’:
vb.cpp:7: error: ISO C++ forbids variable-size array ‘array’
Dit gewoon even ter illustratie.
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan