Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

ошибка "Debug Assertion Failed".Line 1441! - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Пусть даны две вещественные матрицы порядка n. Получите новую матрицу следующим образом(для нахождения минимального элемента и произведения элементов http://www.cyberforum.ru/cpp-beginners/thread1024675.html
Пусть даны две вещественные матрицы порядка n. Получите новую матрицу следующим образом(для нахождения минимального элемента и произведения элементов в указанной строке используйте функции):...
C++ Объём данных в нескольких измерениях Добрый день, уважаемые форумчане! Помогите, пожалуйста решить задачку. Буду благодарен:) Дана емкость винчестера V в мегабайтах. Написать программу, которая бы по введен-ному номеру единицы... http://www.cyberforum.ru/cpp-beginners/thread1024672.html
C++ Перестановка строк в двухмерном массиве
Подскажите пожалуйста функцию осуществляющую перестановку строк в двухмерном массиве 7*7 следующим образом: первую и последнюю,вторую и предпоследнюю и т.д.
C++ преобразования типов
void foo(int i) {...} string str("abcdef"); //..... enum BoardLetter {a = 0, b, c, d, e, f, g, h}; foo( (int)((BoardLetter)str) ); // нужно получить int вот как здесь можно, чтобы...
C++ Аналог std::string http://www.cyberforum.ru/cpp-beginners/thread1024647.html
Имеется некоторый класс, обеспечивающий работу с символами UTF-8. Назовём его uchar. Можно ли простым способом организовать класс ustring, полностью соответствующий по принципу взаимодействия с...
C++ Символьные массивы Написать и отладить программу для ввода предложения, содержащего несколько круглых скобок. Если число открывающихся скобок равно числу закрывающихся, то вывести на экран соответствующее сообщение, в... подробнее

Показать сообщение отдельно
Dicmen
0 / 0 / 0
Регистрация: 23.11.2013
Сообщений: 26

ошибка "Debug Assertion Failed".Line 1441! - C++

01.12.2013, 11:47. Просмотров 1753. Ответов 23
Метки (Все метки)

вот код программы:

C++
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
#include <SFML\Graphics.hpp>
#include<xstring>
#include <iostream>
#include <math.h>
#include <limits>
#include <stdio.h>
 
using namespace std;
using namespace sf;
int ground = 150;
 
 
const int H=12;
const int W=40;
string TileMap[H]=
{
    "11111111111111111111111111111111111111111111111111111",
    "11111111111111110000000000000000011111111111111111111",
    "1111111111                          111111111111111111111111111",
    "11111111111111111111111111111111111111111111111111111",
};
 
 
class PLAYER
{
    public://поля
        float dx,dy; //скорость
        FloatRect rect;
        bool onGround;//проверка, на земле ли находится персонаж
        Sprite sprite;//картинка
        float anim;//анимация
        
        PLAYER (Texture & image)
        {
            sprite.setTexture(image);//загружаем картинку
            rect=FloatRect(0,240,60,85);//устанавливаем координаты первоначальные
                
 
            dx=dy=0;
            
            anim=0;//номер текущего кадра(для анимации)
 
        }
            
 
        void update (float time)
        {
            rect.left+=dx*time;//координата по х
            if(!onGround) dy=dy+0.0005*time;//если мы не на земле то падаем с ускорением
            rect.top+=dy*time;
            onGround=false;//в воздухе
            if(rect.top > ground) {rect.top=ground; dy=0;onGround=true;}//опускаемся на землю
 
            anim +=0.003*time;//скорость анимации
            if (anim>6)anim -=6;
            if (dx>0) sprite.setTextureRect(IntRect(63*int(anim),0,60,85));
            if (dx<0) sprite.setTextureRect(IntRect(63*int(anim)+63,0,-60,85));
            
 
            sprite.setPosition(rect.left,rect.top);
 
            dx=0;
 
        }
 
};
 
int main()
{
RenderWindow window(VideoMode(900,500),"Mario!");//создание окна    
Texture t;//создаём текстуру
 
t.loadFromFile("mario5.jpg");
PLAYER p(t);
p.dx=0.1;
 
Clock clock;
RectangleShape rectangle;
 
while (window.isOpen())
    {
        float time = clock.getElapsedTime().asMicroseconds();//дать прошедшее время
        clock.restart();
        time=time/600;
        
 
        Event event;
        while (window.pollEvent(event))
        {
            if (event.type == Event::Closed)
                window.close();
        }   
        
    
        if (Keyboard::isKeyPressed(Keyboard::Left))//движение влево
        {           
            p.dx=-0.1;
        }
        if (Keyboard::isKeyPressed(Keyboard::Right))//движение вправо
        {
            p.dx=0.1;
        }
 
        if (Keyboard::isKeyPressed(Keyboard::Up))//движение вверх
        {
            if (p.onGround) {p.dy=-0.4;p.onGround=false;} 
        }
        
        p.update(time);
        
        window.clear(Color::White);//очищаем экран
            for (int i=0; i<H; i++) 
            for (int j=0; j<W; j++) 
            {
                if (TileMap[i][j]!='1') rectangle.setFillColor(Color::Green);
                if (TileMap[i][j]=='0') rectangle.setFillColor(Color::Green);
                if (TileMap[i][j]==' ') continue;
                rectangle.setPosition(j*32,i*32);
                window.draw(rectangle);
            }   
    
        window.draw(p.sprite);//рисуем на экране
        window.display();//выводим на экран
            }
    return 0;
    }

создаю строковый массив, потом идёт условие, но к сожалению выдаётся ошибка..
в строках с 13 по 22 и с 112 по 120
0
Миниатюры
ошибка "Debug Assertion Failed".Line 1441!  
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru