Archief - C++ terugkeren naar main.cpp vanuit andere cpp?

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.

Heronic

Legacy Member
Ik ben bezig aan een toolkit die ik nu wil opsplitsen (elke tool een eigen cpp).
Van elke tool word dan in de main een object gemaakt maar hoe keer ik terug vanuit zo een tooltje?

main(); is immers niet bekend bij de andere cpp's en aangezien het void's zijn kan ik ook geen return geven.

forloRn_

Legacy Member
Eh.

In tegenstelling tot Java, waar elke public class in een eigen bestand moet zitten, kies je bij C++ zelf hoe je je klassen verdeelt over de bestanden.

Dat gezegd zijnde is de manier waarop je je broncode opslaat niet relevant bij het programmeren en slaat "main(); is immers niet bekend bij de andere cpp's" op niets. Bovendien is het niet de bedoeling dat je zelf main() aanroept.

Je maakt van elke tool een object en je roept vanuit main() rechtstreeks of onrechtstreeks methodes aan van dat object; die methodes zullen zelf wel terugkeren naar de plaats waar je ze aangeroepen hebt, daar hoef je niks voor te doen.

Of is er iemand anders die weet waarover hij het heeft?

Daedie

Legacy Member
forloRn_ zei:
Eh.

In tegenstelling tot Java, waar elke public class in een eigen bestand moet zitten, kies je bij C++ zelf hoe je je klassen verdeelt over de bestanden.

Dat gezegd zijnde is de manier waarop je je broncode opslaat niet relevant bij het programmeren en slaat "main(); is immers niet bekend bij de andere cpp's" op niets. Bovendien is het niet de bedoeling dat je zelf main() aanroept.

Je maakt van elke tool een object en je roept vanuit main() rechtstreeks of onrechtstreeks methodes aan van dat object; die methodes zullen zelf wel terugkeren naar de plaats waar je ze aangeroepen hebt, daar hoef je niks voor te doen.

Of is er iemand anders die weet waarover hij het heeft?

Nee, ik snap het ook niet echt.

De main is de hoofdfunctie, degene die wordt opgeroepen als het programma start, als ge vanuit de main een functie oproept, zijnde dat een normale (globale) functie (C-stijl) of een member-functie van een object, na het uitvoeren van die functie keert her programma altijd terug naar de main (1 lijn verder als waar de functie werd opgeroepen).

Heronic

Legacy Member
Bedankt voor de info. De member functies (tools) zitten in cases maar aangezien deze in een andere cpp zaten keerde die niet terug naar de main (keuzescherm). Eventjes aangepast werkt weer nu.. had er totaal geen erg in dat hij in feite terugkeerde naar de volgende regel en zo dus aan z'n einde kwam.

forloRn_

Legacy Member
Je roept een functie aan en ze returnt (of throwt een exception). Wat zou ze anders moeten doen? Blijven hangen?

By the way,
aangezien het void's zijn kan ik ook geen return geven

Zelfs functies die niets teruggeven (void) returnen hoor, op het einde van de functie staat een impliciete return. Je kan hem er zelfs expliciet zetten:
Code:
void do_it() {
    
    // giggity giggity giggity

    return;
}
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