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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
BESSON_off
3 / 0 / 1
Регистрация: 08.07.2013
Сообщений: 351
#1

Наткнулся на баг - C++

09.08.2013, 18:50. Просмотров 709. Ответов 18
Метки нет (Все метки)

Всем привет!

Сегодня наткнулся на следующую странность (использую MVS2012)... Если в вашем проекте присутствуют классы, написанные вами, причем не важно в основном коде или в хедере и вы инклудите Windows.h, то классы, написанные вами, при создании объектов, перестают идентифицироваться.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.08.2013, 18:50
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Наткнулся на баг (C++):

std::regex : баг на сайте или баг компилятора? - C++
http://en.cppreference.com/w/cpp/regex/regex_match этот код выкидывает throw... Добавлено через 35 секунд компилятор gcc 4.8

Баг asio? или баг TCP стека? - C++
всем привет. повстречался с очень странным багом. и не могу определить кто бажит, asio, или TCP-стек. на стороне клиента,...

Квантовый баг - C++
Нет, это не баг в программе для квантового компьютера. Это баг в программе для внешнего устройства. Блуждающий, прячущийся баг: при...

Баг компилятора? - C++
Набросал вот такой код: // <@r!er> <wtf> <26.05.2012> #include <iostream> #include <windows.h> using namespace...

Небольшой баг - C++
Дана очень простая задачка: Даны числа a0, X, Y, M. Рассмотрим бесконечную последовательность ai = (X * ai-1 + Y) mod M, где операция...

баг студии? - C++
Есть такой код #include "stdio.h" void test_fun(int count, int ...) { int * arr = &count + 1; for (int i = 0; i <...

18
0x10
2474 / 1647 / 247
Регистрация: 24.11.2012
Сообщений: 4,069
09.08.2013, 18:52 #2
Молодец.
А теперь то же самое нормальным языком - С++-ом то бишь.
0
Kuzia domovenok
1892 / 1747 / 119
Регистрация: 25.03.2012
Сообщений: 5,936
Записей в блоге: 1
09.08.2013, 18:58 #3
Цитата Сообщение от BESSON_off Посмотреть сообщение
перестают идентифицироваться
Это как? Ошибки компиляции? Или подсказки студии перестают высвечиваться при вводе переменных класса?
0
VLK
194 / 163 / 12
Регистрация: 05.05.2013
Сообщений: 1,225
09.08.2013, 19:09 #4
Цитата Сообщение от BESSON_off Посмотреть сообщение
Всем привет!

Сегодня наткнулся на следующую странность (использую MVS2012)... Если в вашем проекте присутствуют классы, написанные вами, причем не важно в основном коде или в хедере и вы инклудите Windows.h, то классы, написанные вами, при создании объектов, перестают идентифицироваться.
И че теперь делать?
0
BESSON_off
3 / 0 / 1
Регистрация: 08.07.2013
Сообщений: 351
09.08.2013, 19:46  [ТС] #5
Цитата Сообщение от VLK Посмотреть сообщение
И че теперь делать?
Не удивляться когда твоя тысячестрочная архитектура начнет плеваться ошибками при правильном коде
0
castaway
Эксперт С++
4885 / 3020 / 370
Регистрация: 10.11.2010
Сообщений: 11,078
Записей в блоге: 10
Завершенные тесты: 1
09.08.2013, 19:50 #6
Скажи нормальными словами что не так. Приведи пример.
0
IGPIGP
Комп_Оратор)
Эксперт по математике/физике
6503 / 3139 / 307
Регистрация: 04.12.2011
Сообщений: 8,661
Записей в блоге: 5
09.08.2013, 20:25 #7
BESSON_off, Попрбую угадать.
Имена придумали популярные в widows.h?
Сочувствую. Шутка:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
namespace o_mine_got{
using namespace std;
}
class cout{
public: void foo(){
o_mine_got::cout<<"Hello word!"<<o_mine_got::endl;
}
};
 int main()
{
cout obj;
obj.foo();
o_mine_got::cin.get();
return 0;
}
Может проясните в коде что стряслось?
0
VLK
194 / 163 / 12
Регистрация: 05.05.2013
Сообщений: 1,225
09.08.2013, 21:20 #8
Цитата Сообщение от IGPIGP Посмотреть сообщение
Может проясните в коде что стряслось?
Ты ни чего не понимаешь, этоBESSON_off разработал С++ и MS VS, просто не хотел светится, популярности там, и передал этим олухам, которые сейчас являются псевдо авторами этих 2-х популярных продуктов и по-этому если баг есть, значит он есть, давать какие то коды нет смысла.
0
IGPIGP
Комп_Оратор)
Эксперт по математике/физике
6503 / 3139 / 307
Регистрация: 04.12.2011
Сообщений: 8,661
Записей в блоге: 5
09.08.2013, 22:01 #9
Цитата Сообщение от VLK Посмотреть сообщение
Ты ни чего не понимаешь
Дык и я об этом. Только, думаю проблема есть. Вопрос, - в чем?
0
VLK
194 / 163 / 12
Регистрация: 05.05.2013
Сообщений: 1,225
09.08.2013, 22:06 #10
Цитата Сообщение от IGPIGP Посмотреть сообщение
Дык и я об этом. Только, думаю проблема есть. Вопрос, - в чем?
Ну весь смысл то в том и заключается, что вопрос есть, но мы, такие тупицы не можем его заметить, т.к. это не наш уровень еще.
0
IGPIGP
09.08.2013, 22:10
  #11

Не по теме:

Цитата Сообщение от VLK Посмотреть сообщение
что вопрос есть
Давайте подождём. Если [TC] не торопится, то нам и тем более не стоит.

0
BESSON_off
3 / 0 / 1
Регистрация: 08.07.2013
Сообщений: 351
10.08.2013, 08:22  [ТС] #12
Вот проект, в котором я с этим столкнулся

Если в нем разблокировать строку создания объекта, то идентификация его теряется, если заблокировать при этом хедер Windows.h то он работает. Смысл в том, что одновременное использование библиотеки Windows.h и использование объекта в этом проекте почему-то не получается...

P.S. Будьте добрее, это раздел для начинающих
0
Вложения
Тип файла: 7z MyFirstProgramm.7z (5.47 Мб, 5 просмотров)
0x10
2474 / 1647 / 247
Регистрация: 24.11.2012
Сообщений: 4,069
10.08.2013, 09:02 #13
BESSON_off, уже есть функция Rectangle - http://msdn.microsoft.com/en-us/libr...(v=vs.85).aspx

Добавлено через 22 минуты

Не по теме:

Нужно было всего лишь привести минимальный исходник, на котором воспроизводится, и текст ошибки.

1
alsav22
5425 / 4820 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
10.08.2013, 09:20 #14
Конфликт имён. Объявите свой класс в своём пространстве имён:
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
#include <iostream>
using std::cout;
using std::cin;
using std::endl;
 
typedef unsigned short ushort;
namespace my
{
 
class Rectangle
{
int itsweight;
int itshight;
public:
    Rectangle(int weight,int hight) {itshight = hight, itsweight = weight;}
    ~Rectangle() {}
    void Draw();
    ushort Area() {return itsweight*itshight;}
    ushort Perimetr() {return ((itshight+itsweight)*2);}
    void Resize();
};
 
void Rectangle::Draw()
{
char mysymbol = 0;
cout << "\nВведите символ отрисовки: ";
cin >> mysymbol;
for (int i =0;i<itshight;i++)
    {
    for (int j = 0;j<itsweight;j++)
        cout << mysymbol;
    cout << endl;
    }
}
 
void Rectangle::Resize()
{
ushort weigth=0,hight=0;
do 
    {
    cout << "\n***Введите новые размеры прямоугольника***\n";
    cout << "Ширина (от 2 до 70): ";
    cin >> weigth;
    if (weigth < 70 && weigth > 2)
        break;
    system("cls");
    }
while (true);
do 
{
    cout << "\nВысота(от 1 до 50): ";
    cin >> hight;
    if (hight >1 && hight < 50 && hight != weigth)
        break;
    system("cls");
    cout << "Установите начальные размеры прямоугольника\n";
    cout << "Ширина (от 2 до 70): " << weigth << endl;
} 
while (true);
itsweight = weigth;
itshight = hight;
}
}
C++
1
my::Rectangle myObject(weight,hight);
2
IGPIGP
10.08.2013, 13:16     Наткнулся на баг
  #15

Не по теме:

BESSON_off, в моих репликах нет ничего несовместимого с добром. Недоумение и попытка экстрасенсорики, связаны не с вопросом, а с тем, как он задан. То есть без кода такие формулировки побуждают к волшебству. Пришлось угадать, кстати, что имя Вы придумали неудачное. И это практически случайно получилось.

Цитата Сообщение от BESSON_off Посмотреть сообщение
Не удивляться когда твоя тысячестрочная архитектура начнет плеваться ошибками при правильном коде
а это ведь слова не новичка, - зачем новичку большая архитектура?
Не обижайтесь, я и сам не лучше.

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.08.2013, 13:16
Привет! Вот еще темы с ответами:

Баг в программе - C++
Задание. Код. При тестировании программы 2 значения не проходят. В чем баг - не знаю. Помогайте с:

Непонятный баг - C++
Пишу программу на Си++ с использованием Qt и FMOD. Вот место, где глючит (тут только куски кода, не весь): void...

Баг в SDL2.0? - C++
Здравтсвуйте. Нашел сегодня странное поведение SDL2.0. Стандартный игровой цикл: #include &lt;windows.h&gt; #include &lt;SDL/SDL.h&gt; int...

Баг в wxDev-C++ - C++
Написал короткую программу в wxDev-C++, но когда нажимаю &quot;выполнить&quot; после компиляции пишет &quot;Проект не откомпилирован&quot;. Пробовал...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
10.08.2013, 13:16
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru