I tweaked the code a bit and now I am getting a "No match for operator[]" at line 53;
#include <SFML/Graphics.hpp>
#include <SFML/Window.hpp>
#include <SFML/System.hpp>
#include <iostream>
#include <string>
#include <vector>
#include <cstdlib>
using namespace std;
sf::CircleShape drawDot(sf::Vector2f position)
{
sf::CircleShape dot;
dot.setRadius(rand());
dot.setFillColor(sf::Color::Green);
dot.setPosition(position);
return dot;
}
int main()
{
sf::RenderWindow window(sf::VideoMode(800, 800), "Little Painter");
sf::Event event;
sf::Vector2f position;
sf::Mouse mouse;
vector<sf::CircleShape> circles;
while(window.isOpen() == true)
{
while(window.pollEvent(event))
{
if(event.type == sf::Event::Closed)
{
window.close();
}
if(event.type == sf::Event::KeyPressed)
{
position = static_cast<sf::Vector2f>(mouse.getPosition(window));
circles.push_back(drawDot(position));
}
window.clear(sf::Color::Black);
for(vector<sf::CircleShape>::iterator it = circles.begin(); it != circles.end(); it++)
{
window.draw(circles[it]);
}
window.display();
}
}
}