abonnement Unibet Coolblue Bitvavo
pi_115202628
quote:
0s.gif Op maandag 6 augustus 2012 20:05 schreef thenxero het volgende:

[..]

Dat snap ik niet helemaal. Ik dacht dat je in C++ dan die GUI moest programmeren. Hoe zit dat dan?
Qt is een library die je een API geeft om cross-platform (mobiel, linux, windows, OS X, ...) GUIs te ontwikkelen (andere I/O is ook supported). Andere libraries zijn er natuurlijk ook, bv. linux' X11 API, de Windows API, Java Swing, enzovoorts; sommige zijn beschikbaar voor C, anderen niet.

C(++) als standaard heeft zelf geen inherente manier om GUIs te maken.
More oneness, less categories
Open hearts, no strategies
Decisions based upon faith and not fear
People who live right now and right here
pi_115246749
Heb zelf qt tools geinstalleerd.
Volgens mij kan je dat wel leren thenxero.
pi_115255142
Ik zit nu te klooien met C#. Daar kan je ook vrij makkelijk windowtjes oproepen met wat text en knoppen erin.
pi_115255811
quote:
0s.gif Op dinsdag 7 augustus 2012 20:11 schreef thenxero het volgende:
Ik zit nu te klooien met C#. Daar kan je ook vrij makkelijk windowtjes oproepen met wat text en knoppen erin.
Heeft niet veel met de taal te maken.
Dat is gewoon welke libraries er standaard worden bij geleverd.
C++ is gelukkig geen taal waar dat soort dingen standaard inzitten.
Wel hebben we STL en STD.

Maar is gewoon een kwestie van libaries. C# heeft standaard een library waarmee je windows kan maken.
Met C++ en bijvoorbeeld qt kan je ook heel makkelijk windows maken.
pi_115256088
Ik ga het nu downloaden
pi_115256703
quote:
14s.gif Op dinsdag 7 augustus 2012 20:27 schreef thenxero het volgende:
Ik ga het nu downloaden
Cool.

Heb je nog vragen over C++? :P
pi_115256899
quote:
0s.gif Op dinsdag 7 augustus 2012 20:38 schreef t4rt4rus het volgende:

[..]

Cool.

Heb je nog vragen over C++? :P
Ik wil binnenkort een keertje vraag 11 van PE aanpakken:
quote:
What is the greatest product of four adjacent numbers on the same straight line in the 20 by 20 grid? [grid van getallen]
Daarvoor moet ik dus een matrix gaan laden. Heb er een beetje op gegoogled, maar er zijn zoveel mogelijkheden met fstream dat ik er niet echt uitkom. Maar heb eerlijk gezegd ook nog niet echt mijn best gedaan.
pi_115257263
Wat is dit nou weer. Ben ik bezig met Qt installeren, krijg ik dit:



Uiteindelijk maar op Ignore gedrukt want Retry haalt niks uit.
pi_115257809
Vreemd,
deze error komt vaker voor zo te zien.
Moet je maar wachten op een update.

Mijn aptitude install qt4-etc... ging heel snel. :P
pi_115258741
Volgens mij werkt ie wel gewoon goed.

edit: briljant programma!! Je kan er direct mee aan de slag. Precies wat ik zocht!

[ Bericht 55% gewijzigd door thenxero op 07-08-2012 21:35:21 ]
pi_115260481
quote:
0s.gif Op dinsdag 7 augustus 2012 21:14 schreef thenxero het volgende:
Volgens mij werkt ie wel gewoon goed.

edit: briljant programma!! Je kan er direct mee aan de slag. Precies wat ik zocht!
Zei ik toch? :P
Maar mooi dat het bevalt.
"Slechts diegene mag slopen die iets beters kan bouwen."
pi_115283667
quote:
0s.gif Op dinsdag 7 augustus 2012 20:38 schreef t4rt4rus het volgende:

Heb je nog vragen over C++? :P
Als je je verveelt, kan je altijd op zoek gaan Herb Sutter's Exceptional C++ (en vervolg), waarin vraagstukken staan voor C++-programmeurs. Het is geen goedkoop boek, maar als je er geen problemen mee hebt, zijn er online ook pdf-versies te vinden. Sommige stukjes zijn een beetje verouderd door C++11, maar het overgrote deel is nog steeds erg nuttig.
"Slechts diegene mag slopen die iets beters kan bouwen."
pi_115292673
quote:
0s.gif Op dinsdag 7 augustus 2012 20:42 schreef thenxero het volgende:

[..]

Ik wil binnenkort een keertje vraag 11 van PE aanpakken:

[..]

Daarvoor moet ik dus een matrix gaan laden. Heb er een beetje op gegoogled, maar er zijn zoveel mogelijkheden met fstream dat ik er niet echt uitkom. Maar heb eerlijk gezegd ook nog niet echt mijn best gedaan.
Mijn 'oplossing':

1
2
3
4
unsigned matrix[20][20] = {
    { 8,  2, 22, 97, 38, 15,  0, 40,  0, 75,  4,  5,  7, 78, 52, 12, 50, 77, 91,  8},
    [...]
};

Dit vond ik minder werk dan de getallen opslaan in een bestand en die daarna inladen. Nooit te moeilijk denken. :)

SPOILER
Om spoilers te kunnen lezen moet je zijn ingelogd. Je moet je daarvoor eerst gratis Registreren. Ook kun je spoilers niet lezen als je een ban hebt.
"Slechts diegene mag slopen die iets beters kan bouwen."
pi_115294434
quote:
0s.gif Op woensdag 8 augustus 2012 15:59 schreef GS42 het volgende:

[..]

Mijn 'oplossing':
[ code verwijderd ]

Dit vond ik minder werk dan de getallen opslaan in een bestand en die daarna inladen. Nooit te moeilijk denken. :)

SPOILER
Om spoilers te kunnen lezen moet je zijn ingelogd. Je moet je daarvoor eerst gratis Registreren. Ook kun je spoilers niet lezen als je een ban hebt.
En heb je dan handmatig overal komma's gezet? (Dat is wel takkenwerk)

Ik wou sowieso nog leren hoe ik een matrix moet laten omdat ik dat later nog wil gebruiken, dus dit was een mooi moment om het alvast te leren. Het is me ondertussen gelukt om de matrix te laden, ik krijg alleen nog het foute antwoord :P .
pi_115294916
quote:
0s.gif Op woensdag 8 augustus 2012 16:37 schreef thenxero het volgende:

[..]

En heb je dan handmatig overal komma's gezet? (Dat is wel takkenwerk)
Ha, nee joh. Gewoon find/replace en de spaties vervangen door een komma en een spatie.

quote:
Ik wou sowieso nog leren hoe ik een matrix moet laten omdat ik dat later nog wil gebruiken, dus dit was een mooi moment om het alvast te leren. Het is me ondertussen gelukt om de matrix te laden, ik krijg alleen nog het foute antwoord .
Ah, dan doe je het netter dan ik. :P
"Slechts diegene mag slopen die iets beters kan bouwen."
pi_115294956
Voor dat soort dingen is Python's "eval" function een uitkomst. Die neemt een string als input, en voert die string uit als Python code.
pi_115296847
Ik hou het voorlopig even bij C++
pi_115297461
quote:
0s.gif Op woensdag 8 augustus 2012 16:37 schreef thenxero het volgende:

[..]
Het is me ondertussen gelukt om de matrix te laden, ik krijg alleen nog het foute antwoord :P .
Ik was vergeten dat diagonaal ook van linksonder naar rechtsboven kan zijn :') . Nu wel goed :) .
pi_115308700
Is het mogelijk om een vector te verwijderen? Ik heb zitten klooien met vector::erase en vector::clear, maar de waardes blijven staan. Het enige wat er volgens mij verandert is dat als je vector::push_back gebruikt dat hij de oude vector overschrijft.

Voor mijn doeleinden zou het ook genoeg zijn om de hele vector in nullen te veranderen en dan weer overschrijfbaar te maken. Dit kan ik wel doen op zo'n manier, maar dat lijkt me onnodig omslachtig:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <iostream>
#include <vector>

using namespace std;

int main()
{
    vector<int> a;
    a.push_back(1);
    a.push_back(2);
    a.push_back(3);
    a.push_back(4);
    a.push_back(5);
    a.push_back(6);
    int size = a.size();
    a.clear();
    for(int i=0; i<size; i++)
    {
        a.push_back(0);
    }
    a.clear();
    a.push_back(55);
    a.push_back(66);
    cout << a[0] << " " << a[1] << " " << a[2] << " " << a[3] << " " << a[4] << " " << a[5];
    return 0;
}
pi_115309062
Je kan zoiets doen:
1fill(a.begin(), a.end(), 0);
Maar 't is me niet geheel duidelijk wat je met verwijderen bedoelt.
pi_115309078
1    cout << a[0] << " " << a[1] << " " << a[2] << " " << a[3] << " " << a[4] << " " << a[5];

Je leest hier voorbij de grenzen van de vector. In je voorbeeld heeft a op dit moment maar 2 waarden, namelijk 55 en 66. Dus verder dan a[1] ( < a.size() ) mag je niet lezen.

En verder lijkt je code prima: met vector.clear() maak je de vector helemaal leeg.
"Slechts diegene mag slopen die iets beters kan bouwen."
pi_115309132
quote:
0s.gif Op woensdag 8 augustus 2012 21:41 schreef GS42 het volgende:

[ code verwijderd ]

Je leest hier voorbij de grenzen van de vector. In je voorbeeld heeft a op dit moment maar 2 waarden, namelijk 55 en 66. Dus verder dan a[1] ( < a.size() ) mag je niet lezen.

En verder lijkt je code prima: met vector.clear() maak je de vector helemaal leeg.
Ik krijg als output

155 66 0 0 0 0

Die nullen blijven staan en de vector is dus niet kleiner geworden. Ik krijg ook geen error dat ik buiten de grenzen zit of zo :? .
pi_115309172
quote:
0s.gif Op woensdag 8 augustus 2012 21:41 schreef thabit het volgende:
Je kan zoiets doen:
[ code verwijderd ]

Maar 't is me niet geheel duidelijk wat je met verwijderen bedoelt.
Met verwijderen bedoel ik dat het niet meer bestaat. Dus dat ik weer opnieuw kan zeggen:
1vector<int> a;
alsof ie nog niet bestaat. Of dat ik de vector weer kan gebruiken alsof hij nooit bestaan heeft.
pi_115309278
Ofwel je gebruikt new en delete (en dus een pointer naar een vector), ofwel je gebruikt accolades om de scope van a aan te geven.
pi_115309322
Maar dan nog zie ik niet wat er mis is met clear.
abonnement Unibet Coolblue Bitvavo
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')