Код инcтрументирования объектов cookie стека обнаружил переполнение буфера, связанное со стеком

Вот решил сделать крестики нолики на c++ с помощью библиотеки SFML. Когда запускал на конфигурации Debug все было нормально, но когда я поставил на Release, почему то Visual Studio 2019 начало жаловаться "Необработанное исключение по адресу 0x00B8264F в sfml_project.exe: Код инcтрументирования объектов cookie стека обнаружил переполнение буфера, связанное со стеком..". введите сюда описание изображенияПовторюсь что на Debug все было нормально. Вот код

#include <SFML/Graphics.hpp>
#include <iostream>
#include <Windows.h>
#include <conio.h>
using namespace sf;
using namespace std;

void Fields_button(RenderWindow& window) { 
    float MouseX = Mouse::getPosition(window).x;
    float MouseY = Mouse::getPosition(window).y;

    //проверяет в какую ячейку поля нажал игрок
    //up
    if (((382.f < MouseX and MouseX < 550.f) and (87.f < MouseY and MouseY < 243.f))) {
        cout << 1 << endl;
    }
    if (((561.f < MouseX and MouseX < 747.f) and (87.f < MouseY and MouseY < 243.f))) {
        cout << 2 << endl;
    }
    if (((764.f < MouseX and MouseX < 927.f) and (87.f < MouseY and MouseY < 243.f))) {
        cout << 3 << endl;
    }
    //center
    if (((382.f < MouseX and MouseX < 550.f) and (256.f < MouseY and MouseY < 442.f))) {
        cout << 4 << endl;
    }
    if (((561.f < MouseX and MouseX < 747.f) and (256.f < MouseY and MouseY < 442.f))) {
        cout << 5 << endl;
    }
    if (((764.f < MouseX and MouseX < 927.f) and (256.f < MouseY and MouseY < 442.f))) {
        cout << 6 << endl;
    }
    //down
    if (((382.f < MouseX and MouseX < 550.f) and (457.f < MouseY and MouseY < 629.f))) {
        cout << 7 << endl;
    }
    if (((561.f < MouseX and MouseX < 747.f) and (457.f < MouseY and MouseY < 629.f))) {
        cout << 8 << endl;
    }
    if (((764.f < MouseX and MouseX < 927.f) and (457.f < MouseY and MouseY < 629.f))) {
        cout << 9 << endl;
    }

}

int main()
{
    setlocale(LC_ALL, "Russian");
    sf::RenderWindow window(sf::VideoMode(1280, 720), "Krestiki_noliki", Style::Close);
    
    //Buttons
    //Play
    Image play_image;
    play_image.loadFromFile("Textures fonts/PLAY.png"); //upload image
    play_image.createMaskFromColor(Color(255, 255, 255, 0)); //transparent
    Texture play_txr; //upload
    play_txr.loadFromImage(play_image);
    Sprite play(play_txr);
    play.setOrigin(465, 229); //object center
    play.setPosition(540, 150); //position
    Vector2f play_size(465, 229); //size
    play.setScale( //size
        play_size.x / play.getLocalBounds().width,
        play_size.y / play.getLocalBounds().height
    );

    //Play clicking check
    RectangleShape play_check(Vector2f(290, 95));
    play_check.setFillColor(Color(252, 3, 3, 0));
    play_check.setPosition(500, 156);
    
    //Field
    bool clickFields = false;
    Image Fields_image;
    Fields_image.loadFromFile("Textures fonts/Fields.png"); //upload image
    Fields_image.createMaskFromColor(Color(255, 255, 255, 0)); //transparent
    Texture Fields_txr; //upload
    Fields_txr.loadFromImage(Fields_image);
    Sprite Fields(Fields_txr);
    Fields.setPosition(290, 0); //position
    Fields.setColor(Color(255, 255, 255, 0)); //color and transparent
    
    //Back
    Image Back_image;
    Back_image.loadFromFile("Textures fonts/back.png"); //upload image
    Back_image.createMaskFromColor(Color(255, 255, 255, 0)); //transparent
    Texture Back_txr; //upload
    Back_txr.loadFromImage(Back_image);
    Sprite Back(Back_txr);
    Back.setColor(Color(255, 255, 255, 0));
    Back.setPosition(-88, -20); //position
    Vector2f Back_size(320, 180); //size
    Back.setScale( //size
        Back_size.x / Back.getLocalBounds().width,
        Back_size.y / Back.getLocalBounds().height
    );
    
    //Back check
    RectangleShape Back_check(Vector2f(74, 89));
    Back_check.setFillColor(Color(200, 0, 255, 0));
    Back_check.setPosition(30, 30);
    
    //Nolik
    Image Nolik_image;
    Nolik_image.loadFromFile("Textures fonts/O.png"); //upload image
    Nolik_image.createMaskFromColor(Color(255, 255, 255, 0)); //transparent
    Texture Nolik_txr; //upload
    Nolik_txr.loadFromImage(Nolik_image);
    Sprite Nolik(Nolik_txr);
    Nolik.setColor(Color(255, 255, 255, 150));
    Nolik.setOrigin(190.f/2, 181.f/2); //center object
    Nolik.setPosition(310.f, 80.f); //position
    Vector2f Nolik_size(343.f, 195.f); //size
    Nolik.setScale( //size
        Nolik_size.x / Nolik.getLocalBounds().width,
        Nolik_size.y / Nolik.getLocalBounds().height
    );

    while (window.isOpen())
    {
        Event event;
        while (window.pollEvent(event))
        {
            if (event.type == sf::Event::Closed)
                window.close();
            
            //play's check clicking
            if (event.key.code == Mouse::Left) {
                if (play_check.getGlobalBounds().contains(Mouse::getPosition(window).x, Mouse::getPosition(window).y) and clickFields == false) {
                    printf("PLAY IS CLICKED");
                    printf("\n");
                    clickFields = true;
                    play.setColor(Color(255, 255, 255, 0));
                    Fields.setColor(Color(255, 255, 255, 255));
                    Back.setColor(Color(255, 255, 255, 255));
;                }
            }

            //back's check clicking
            if (event.key.code == Mouse::Left) {
                if (Back_check.getGlobalBounds().contains(Mouse::getPosition(window).x, Mouse::getPosition(window).y) and clickFields == true) {
                    printf("BACK IS CLICKED");
                    printf("\n");
                    clickFields = false;
                    play.setColor(Color(255, 255, 255, 255));
                    Fields.setColor(Color(255, 255, 255, 0));
                    Back.setColor(Color(255, 255, 255, 0));
                }
            }
            if ((event.key.code == Mouse::Left) and (clickFields == true)) {
                Fields_button(window);
            }
        }

        window.clear(Color(13, 13, 13)); //wallpaper color
        //show
        window.draw(play);
        window.draw(Fields);
        window.draw(Back);
        window.draw(Nolik);
        //
        window.display();
    }

    return 0;
}

Пожалуйста скажите в чем проблема.


Ответы (0 шт):