Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.62/13: Рейтинг темы: голосов - 13, средняя оценка - 4.62
 Аватар для matviiv
429 / 313 / 129
Регистрация: 09.02.2021
Сообщений: 1,096
Записей в блоге: 1

Ошибка в конструкторе класса Book

12.09.2021, 21:27. Показов 3013. Ответов 44
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте ,не могу исправить ошибку ,буду благодарен за помощь:
Unhandled exception at 0x79E5E625 (ucrtbased.dll) in ФФ.exe: 0xC00000FD: Stack overflow (parameters: 0x00000001, 0x00EC2FFC).
Book.cpp:
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
#include "Book.h"
 
string Book::GetAuthor()
{
    return author;
}
 
string Book::GetTitle()
{
    return title;
}
 
Book* Book::GetList()
{
    return list_of_references;
}
 
void Book::Set(string a, string t)
{
    author = a;
    title = t;
}
 
void Book::ShowAuthorAndTitle()
{
    cout << author << " " << title << endl;
}
 
void Book::ShowList()
{
    for (int i = 0; i < number; i++) {
        list_of_references[i].ShowAuthorAndTitle();
    }
}
 
Book::Book()
{
    author = "No author";
    title = "No title";
    list_of_references[number-1].Set("No", "No");
}
 
Book::~Book()
{
    delete[]list_of_references;
}
Book.h:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#pragma once
#include <iostream>
#include <string>
using namespace std;
class Book
{
private:
    string author;
    string title;
    int number=1;
    Book *list_of_references = new Book[number];
public:
    string GetAuthor();
    string GetTitle();
    Book* GetList();
    void Set(string a, string t);
    void ShowAuthorAndTitle();
    void ShowList();
    Book();
    ~Book();
};
1
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
12.09.2021, 21:27
Ответы с готовыми решениями:

Ошибка при работе с объектом класса в конструкторе другого класса
Имеется данный код: https://github.com/ubelian/glgame/tree/master/glgame В файле Food.cpp в конструкторе класса Food::Food() на 19...

Ошибка в конструкторе класса
Всем доброго времени суток! Есть простая задачка: Написать реализацию класса и короткую программку, использующую все функции-члены. ...

Ошибка в конструкторе копирования класса
Хотя и делал по образцу, но почему то лезет ошибка записи за пределы динамического массива, хотя и переменные копируются верно (отладчик...

44
Гвоздь Задиров
 Аватар для Folian
1719 / 1118 / 337
Регистрация: 25.01.2019
Сообщений: 2,946
12.09.2021, 21:47
Цитата Сообщение от matviiv Посмотреть сообщение
C++
1
2
3
4
class Book
{
...
    Book *list_of_references = new Book[number];

Самозацикленное бесконечое.
1
 Аватар для matviiv
429 / 313 / 129
Регистрация: 09.02.2021
Сообщений: 1,096
Записей в блоге: 1
12.09.2021, 21:51  [ТС]
Folian, Хмм да теперь понял,только как исправить?Создавать клас Book отдельно и етот клас в Library?
0
Гвоздь Задиров
 Аватар для Folian
1719 / 1118 / 337
Регистрация: 25.01.2019
Сообщений: 2,946
12.09.2021, 21:57
Цитата Сообщение от matviiv Посмотреть сообщение
Book отдельно и етот клас в Library?
Да.
1
 Аватар для matviiv
429 / 313 / 129
Регистрация: 09.02.2021
Сообщений: 1,096
Записей в блоге: 1
13.09.2021, 11:46  [ТС]
Folian, Вот сделал через 2 класса,но тоже ошибки,возможно в классах ошибка где-то а может в main не правильно обьявляю как-то,не могли б посмотреть?
Library.cpp:
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
#include "Library.h"
 
void Library::SetList(int n, Book* list)
{
    number = n;
    list_of_references = list;
}
 
Book* Library::GetList()
{
    return list_of_references;
}
 
void Library::ShowList()
{
    for (int i = 0; i < number; i++) {
        list_of_references[i].ShowAuthorAndTitle();
    }
}
 
Library::~Library()
{
    delete[]list_of_references;
}
Book.cpp:
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
#include "Book.h"
 
string Book::GetAuthor()
{
    return author;
}
 
string Book::GetTitle()
{
    return title;
}
 
 
void Book::SetAuthorAndTitle(string a, string t)
{
    author = a;
    title = t;
}
 
void Book::ShowAuthorAndTitle()
{
    cout << author << " " << title << endl;
}
 
 
Book::Book()
{
    author = "No author";
    title = "No title";
}
Library.h:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#pragma once
#include <iostream>
#include <string>
#include "Book.h"
using namespace std;
class Library
{
private:
    int number ;
    Book* list_of_references = new Book[number];
public:
    void SetList(int n, Book* list);
    Book* GetList();
    void ShowList();
    ~Library();
};
Book.h:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#pragma once
#include <iostream>
#include <string>
 
using namespace std;
class Book
{
private:
    string author;
    string title;
 
public:
    string GetAuthor();
    string GetTitle();
    void SetAuthorAndTitle(string a, string t);
    void ShowAuthorAndTitle();
    Book();
};
Source.cpp:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
#include <string>
#include "Book.h"
#include "Library.h"
 
using namespace std;
int main() {
    Book* b = new Book[2];
    for (int i = 0; i < 2; i++) {
        b[i].SetAuthorAndTitle("Example", "Example");
        b[i].ShowAuthorAndTitle();
    }
    Library l;
        l.SetList(2, b);
        l.ShowList();
    delete[]b;
    return 0;
}
0
Модератор
 Аватар для long399
2882 / 1837 / 933
Регистрация: 16.10.2013
Сообщений: 5,242
Записей в блоге: 15
13.09.2021, 12:20
Я думаю вам нужно убрать из заголовочного файла класса Library выделение памяти в 10 строке. Обычно, выделение памяти делается в конструкторе, а ее освобождение в деструкторе (как вы и делаете).
1
Just Do It!
 Аватар для XLAT
4211 / 2668 / 655
Регистрация: 23.09.2014
Сообщений: 9,082
Записей в блоге: 3
13.09.2021, 12:22
Лучший ответ Сообщение было отмечено matviiv как решение

Решение

Цитата Сообщение от matviiv Посмотреть сообщение
только как исправить?
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
/// Library.h:
#pragma once
#include <iostream>
#include <string>
//#include "Book.h"
using namespace std;
 
class Book{};
 
class Library
{
private:
    int number ;
    Book* list_of_references;
public:
    void SetList(int n, Book* list){}
    Book* GetList(){return nullptr;}
    void ShowList(){}
    ~Library(){delete[] list_of_references;}
    Library(int n): number(n), list_of_references(new Book[number]){} ///<<<---!
};
 
///----------------------------------------------------------------------------|
/// Тест.
///----------------------------------------------------------------------------:
int main()
{   Library library(10);
}
1
 Аватар для matviiv
429 / 313 / 129
Регистрация: 09.02.2021
Сообщений: 1,096
Записей в блоге: 1
13.09.2021, 12:29  [ТС]
XLAT, а как тогда заполнить етот список литератури и вивести
0
Модератор
 Аватар для long399
2882 / 1837 / 933
Регистрация: 16.10.2013
Сообщений: 5,242
Записей в блоге: 15
13.09.2021, 12:34
Думаю, можно добавить для класса библиотеки такие конструкторы:

C++
1
2
3
4
5
// Library.h
...
Library(int);
Library(int, Book*);
...
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// Library.cpp
...
Library::Library(int n)
{
    number = n;
    list_of_references = new Book[number];
}
 
Library::Library(int n, Book* list)
{
    number = n;
    list_of_references = new Book[number];
    for (int i = 0; i < number; i++) {
        list_of_references[i] = list[i];
    }
}
...
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
int main() {
    Book* b = new Book[2];
    for (int i = 0; i < 2; i++) {
        b[i].SetAuthorAndTitle("Example", "Example");
        b[i].ShowAuthorAndTitle();
    }
    Library l1(2);
    l1.ShowList();
    
    Library l2(2, b);
    l2.ShowList();
    delete[]b;
    return 0;
}
1
Just Do It!
 Аватар для XLAT
4211 / 2668 / 655
Регистрация: 23.09.2014
Сообщений: 9,082
Записей в блоге: 3
13.09.2021, 12:49
Цитата Сообщение от matviiv Посмотреть сообщение
а как тогда заполнить етот список литератури и вивести
1. добавить метод для ручного ввода в цикле по каждому экземпляру книги.
2. добавить метод для ввода из файла в цикле по каждому экземпляру книги.
3. добавить метод для заполнения рандомными значениями в цикле по каждому экземпляру книги.
4. придумать другие источники, например, из памяти компутера.
0
 Аватар для matviiv
429 / 313 / 129
Регистрация: 09.02.2021
Сообщений: 1,096
Записей в блоге: 1
13.09.2021, 12:53  [ТС]
Я максимально запутался:
Source.cpp:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <string>
#include "Book.h"
#include "Library.h"
 
using namespace std;
int main() {
    Book* b = new Book[2];
    for (int i = 0; i < 2; i++) {
        b[i].SetAuthorAndTitle("Example", "Example");
        b[i].ShowAuthorAndTitle();
    }
    Library l1(2);
    l1.ShowList();
 
    Library l2(2, b);
    l2.ShowList();
    delete[]b;
    return 0;
}
Library.h:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#pragma once
#include <iostream>
#include <string>
#include "Book.h"
using namespace std;
class Library
{
private:
    int number ;
    Book* list_of_references = new Book[number];
public:
    void SetList(int n, Book* list);
    Book* GetList() { return nullptr; }
    void ShowList();
    ~Library();
    Library(int n );
    Library(int n, Book*list);
};
Library.cpp:
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
#include "Library.h"
 
void Library::SetList(int n, Book* list)
{
    number = n;
    list_of_references = list;
}
 
Book* Library::GetList()
{
    return nullptr;
}
 
void Library::ShowList()
{
    for (int i = 0; i < number; i++) {
        list_of_references[i];
    }
}
 
Library::~Library()
{
    delete[]list_of_references;
}
 
Library::Library(int n)
{
    number = n;
    list_of_references = new Book[number];
}
 
Library::Library(int n, Book*list)
{
    number = n;
    list_of_references = new Book[number];
    for (int i = 0; i < number; i++) {
        list_of_references[i] = list[i];
    }
}
Book.cpp:
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
#include "Book.h"
 
string Book::GetAuthor()
{
    return author;
}
 
string Book::GetTitle()
{
    return title;
}
 
 
void Book::SetAuthorAndTitle(string a, string t)
{
    author = a;
    title = t;
}
 
void Book::ShowAuthorAndTitle()
{
    cout << author << " " << title << endl;
}
 
 
Book::Book()
{
    author = "No author";
    title = "No title";
}
Book.h:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#pragma once
#include <iostream>
#include <string>
 
using namespace std;
class Book
{
private:
    string author;
    string title;
 
public:
    string GetAuthor();
    string GetTitle();
    void SetAuthorAndTitle(string a, string t);
    void ShowAuthorAndTitle();
    Book();
}
;

Добавлено через 21 секунду
XLAT, я исправлял код под ваш, и почему-то много ошибок
0
Just Do It!
 Аватар для XLAT
4211 / 2668 / 655
Регистрация: 23.09.2014
Сообщений: 9,082
Записей в блоге: 3
13.09.2021, 13:01
Цитата Сообщение от matviiv Посмотреть сообщение
XLAT, я исправлял код под ваш, и почему-то много ошибок
хм,
я вижу всё тож же самый код:
Цитата Сообщение от matviiv Посмотреть сообщение
Library.h:
...
Book* list_of_references = new Book[number];
исправьте ...
0
 Аватар для matviiv
429 / 313 / 129
Регистрация: 09.02.2021
Сообщений: 1,096
Записей в блоге: 1
13.09.2021, 13:20  [ТС]
XLAT, ну допустим вот:
Library.h:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#pragma once
#include <iostream>
#include <string>
#include "Book.h"
using namespace std;
class Library
{
private:
    int number ;
    Book* list_of_references;
public:
    void SetList(int n, Book* list);
    Book* GetList() { return nullptr; }
    void ShowList();
    ~Library();
    Library(int n );
    Library(int n, Book*list);
};
Добавлено через 3 минуты
XLAT, а как добавить метод считивание с клавиатури и как еще можно поправить код?
0
Модератор
 Аватар для long399
2882 / 1837 / 933
Регистрация: 16.10.2013
Сообщений: 5,242
Записей в блоге: 15
13.09.2021, 13:28
как вариант:

C++
1
2
3
4
// Library.h
...
void fillList();
...
C++
1
2
3
4
5
6
7
8
9
10
// Library.cpp
...
void Library::fillList()
{
    for (int i = 0; i < number; i++) {
        // ввод author для i-ой книги
        // ввод title для i-ой книги
    }
}
...
C++
1
2
3
4
5
// main.cpp
...
Library l1(2);
l1.fillList();
...
0
 Аватар для matviiv
429 / 313 / 129
Регистрация: 09.02.2021
Сообщений: 1,096
Записей в блоге: 1
13.09.2021, 13:35  [ТС]
long399, Видимо немного не так понял:
C++
1
2
3
4
5
6
7
8
9
void Library::FillList()
{
    for (int i = 0; i < number; i++) {
        string a, t;
        cin >> a;
        cin >> t;
        list_of_references[i].SetAuthorAndTitle(a, t);
    }
}
0
Just Do It!
 Аватар для XLAT
4211 / 2668 / 655
Регистрация: 23.09.2014
Сообщений: 9,082
Записей в блоге: 3
13.09.2021, 13:39
Цитата Сообщение от matviiv Посмотреть сообщение
ну допустим вот:
ошибки компиляции есть?

Цитата Сообщение от matviiv Посмотреть сообщение
а как добавить метод считивание с клавиатури
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
class Library
{
private:
    ...
public:
    void input_user()
    {   auto& p = list_of_references;
        for(size_t i = 0; i < nimber; ++i)
        {   std::getline(std::cin, p[i].author);
            std::getline(std::cin, p[i].title );
        }
    }
    
    void info()
    {   auto& p = list_of_references;
        for(size_t i = 0; i < nimber; ++i)
        {   std::cout << p[i].author << " - " << p[i].title << '\n';
        }
    }
    ...
0
 Аватар для matviiv
429 / 313 / 129
Регистрация: 09.02.2021
Сообщений: 1,096
Записей в блоге: 1
13.09.2021, 13:42  [ТС]
XLAT, ошибок нет, а вот не виводит результат

Добавлено через 1 минуту
XLAT, в вашем коде ошибки на author и title
0
Just Do It!
 Аватар для XLAT
4211 / 2668 / 655
Регистрация: 23.09.2014
Сообщений: 9,082
Записей в блоге: 3
13.09.2021, 13:50
Цитата Сообщение от matviiv Посмотреть сообщение
в вашем коде ошибки на author и title
сделайте их друзьями:
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
#pragma once
#include <iostream>
#include <string>
//#include "Book.h"
using namespace std;
 
class Book
{
    string author;
    string title;
    friend class Library; ///<<<--- Вот так!
 
public:
 
};
 
class Library
{
private:
    int number ;
    Book* list_of_references;
public:
    void input_user()
    {   auto& p = list_of_references;
        for(size_t i = 0; i < number; ++i)
        {   std::getline(std::cin, p[i].author);
            std::getline(std::cin, p[i].title );
        }
    }
 
    void info()
    {   auto& p = list_of_references;
        for(size_t i = 0; i < number; ++i)
        {   std::cout << p[i].author << " - " << p[i].title << '\n';
        }
    }
 
    void SetList(int n, Book* list){}
    Book* GetList(){return nullptr;}
    void ShowList(){}
    ~Library(){auto& p = list_of_references; delete[] list_of_references;}
    Library(int n): number(n), list_of_references(new Book[number]){}
};
 
///----------------------------------------------------------------------------|
/// Тест.
///----------------------------------------------------------------------------:
int main()
{   Library library(2);
            library.input_user();
            library.info      ();
}
Добавлено через 5 минут
c колокольни ооп'а лучше так:
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
#pragma once
#include <iostream>
#include <string>
//#include "Book.h"
using namespace std;
 
class Book
{
    string author;
    string title;
    void input_user()
    {   std::getline(std::cin, author);
        std::getline(std::cin, title );
    }
    void info()
    {   std::cout << author << " - " << title << '\n';
    }
    friend class Library;
 
public:
 
};
 
class Library
{
private:
    int number ;
    Book* list_of_references;
 
public:
    void input_user()
    {   auto& p = list_of_references;
        for(size_t i = 0; i < number; ++i)
        {   p[i].input_user();
        }
    }
 
    void info()
    {   auto& p = list_of_references;
        for(size_t i = 0; i < number; ++i)
        {   p[i].info();
        }
    }
 
    void SetList(int n, Book* list){}
    Book* GetList(){return nullptr;}
    void ShowList(){}
    ~Library(){auto& p = list_of_references; delete[] list_of_references;}
    Library(int n): number(n), list_of_references(new Book[number]){}
};
 
///----------------------------------------------------------------------------|
/// Тест.
///----------------------------------------------------------------------------:
int main()
{   Library library(2);
            library.input_user();
            library.info      ();
}
1
 Аватар для matviiv
429 / 313 / 129
Регистрация: 09.02.2021
Сообщений: 1,096
Записей в блоге: 1
13.09.2021, 14:14  [ТС]
XLAT, а если брать мой код и без друга то никак не исправить?
0
Just Do It!
 Аватар для XLAT
4211 / 2668 / 655
Регистрация: 23.09.2014
Сообщений: 9,082
Записей в блоге: 3
13.09.2021, 14:21
Цитата Сообщение от matviiv Посмотреть сообщение
без друга то никак не исправить?
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
#pragma once
#include <iostream>
#include <string>
//#include "Book.h"
using namespace std;
 
class Book
{
    string author;
    string title;
 
public:
    void input_user()
    {   std::getline(std::cin, author);
        std::getline(std::cin, title );
    }
    void info()
    {   std::cout << author << " - " << title << '\n';
    }
};
 
class Library
{
private:
    int number ;
    Book* list_of_references;
public:
        void input_user()
    {   auto& p = list_of_references;
        for(size_t i = 0; i < number; ++i)
        {   p[i].input_user();
        }
    }
 
    void info()
    {   auto& p = list_of_references;
        for(size_t i = 0; i < number; ++i)
        {   p[i].info();
        }
    }
 
    void SetList(int n, Book* list){}
    Book* GetList(){return nullptr;}
    void ShowList(){}
    ~Library(){auto& p = list_of_references; delete[] list_of_references;}
    Library(int n): number(n), list_of_references(new Book[number]){}
};
 
///----------------------------------------------------------------------------|
/// Тест.
///----------------------------------------------------------------------------:
int main()
{   Library library(2);
            library.input_user();
            library.info      ();
}
кроме того раз у вас уже есть гетеры:
Цитата Сообщение от matviiv Посмотреть сообщение
string GetAuthor();
    string GetTitle();
то можно добавить и сетеры:
C++
1
2
    void SetAuthor();
    void SetTitle();
но я уже добавил:
это в качестве сетера:

C++
1
    void input_user();
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
13.09.2021, 14:21
Помогаю со студенческими работами здесь

Ошибка в объявлении класса (в конструкторе)
Я не могу разобраться с классами и конструкторами, в строчке Progect();// {numb=0; sum=0; date=;} всегда высвечивает ошибку,...

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

Инициализация шаблонного класса(В конструкторе класса после двоеточия вновь имя класса)
Всем доброго времени суток! Пытаюсь разобраться как работает приведенный мной код. Конкретно, пытаюсь разобраться что происходит в...

Разработайте класс Book, определив второй метод для класса с параметром Book
Разработайте класс Book , определив второй метод для класса с параметром Book. Метод должен сравнить цену за единицу вызываемого объекта...

Ошибка при открытии класса в конструкторе
Подскажите пжлст. Написал форму со всеми объектами и событиями. После создал наследника этого класса переопределил половину событий в...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru