Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
C++ Перевести введенное число в заданную систему счисления с заданным основанием Перевести введенное число в заданную систему счисления с заданным основанием При помощи steck и массива. Хэээлп. https://www.cyberforum.ru/ cpp-beginners/ thread2410842.html Обработка ошибки C++
Пытаюсь поймать некорректный ввод, но при вводе "34sd" , например, выдает ошибку и переходит на заполнение элементов матрицы. cout << "Введите размерность массива: " << endl; cout << "m = "; cin >> m; while (cin.fail() && (m <= 0)) { cin.clear(); cin.ignore(32767, '\n'); cout << "Неверное значение..." << endl; cout << "m = ";
C++ Найти все числа a,b,c в диапазоне от 1 до 20,для которых a^2+b^2=c^2 Найти все числа a,b,c в диапазоне от 1 до 20,для которых a^2+b^2=c^2 Написать программу максимально простым языком https://www.cyberforum.ru/ cpp-beginners/ thread2410822.html C++ Не работает собственная функция обмена значений двух переменных https://www.cyberforum.ru/ cpp-beginners/ thread2410803.html
Не выполняется функция замены значений между двумя переменными. Почему? #include "pch.h" #include "iostream" using namespace std; void function_swap(int a, int b) { int t; t = a; a = b; b = t; }
C++ Как сделать динамический массив из массивов?
Вот есть задача: надо сделать динамический массив, который будет заполнен n количеством массивов, в каждом из этих массивов должны быть числа, например такие: (0;15) в первом массиве, (15;30) во втором массиве, (30;45) в третьем и т.д. Потом надо вывести числа, введенные с клавиатуры так, чтобы программа показывала в каком массиве по порядку находится это число/эти числа. Задача для меня как для...
C++ Советы по абстрактной фабрике Здравствуйте! Сварганил в голове такую задачу (дабы закрепить сей паттерн у себя в голове): Есть Разработчики(Хакеры и Программисты), Инженеры(Физики и Жел. Хакеры) и Веберы(Веб-Программисты и Веб-Хакеры). Разделить их на 2 комъюнити при помощи абстрактной фабрики. Вот что получилось: #include <iostream> #include <vector> #include <string> /// Class of Developer: class Developer { https://www.cyberforum.ru/ cpp-beginners/ thread2410790.html
C++ Определить, попадает ли точка в заданную область Определить попадает ли точка с заданными координатами в заштрихованную область. Помогите пожалуйста :( https://www.cyberforum.ru/ cpp-beginners/ thread2410784.html C++ БАТНИК, КАК СДЕЛАТЬ ТЕСТ?
Вот я создал бат файл, а дальше что? У меня приложение работает в командной строке, как сделать к нему bat тесты и как выполнить эти тесты? В общем, пожалуйста, объясните про бат файлы, на какой сайт не зайду про бат файлы, постоянно какая-то муть(может и нет, но там нет ничего мне нужного).
C++ Ошибки C2275, C3861, C2146 https://www.cyberforum.ru/ cpp-beginners/ thread2410773.html
Ошибка C2275 LPSTR: недопустимое использование этого типа в качестве выражения Ошибка C3861 L: идентификатор не найден Ошибка C2146 синтаксическая ошибка: отсутствие ")" перед идентификатором "buff" эти три ошибки возникают в 35 строчке: TEXT((LPSTR)buff), как можно их решить ? #include "Car.h" Car::Car() { }
C++ Поиск слов палиндромов и сжатие массива https://www.cyberforum.ru/ cpp-beginners/ thread2410771.html
Добрый день. Необходимо написать программу, которая будет находить в строке слова-палиндромы, а затем "удалять" из строки слова, не являющиеся палиндромами. С поиском палиндромов проблем нет, но не получается сжать строку. #include "pch.h" #include <iostream> #include <string> #include <cstring> #include <fstream> using namespace std; ...
Зона видимости экземпляра класса после блока try C++
Добрый день! При создании класса учел исключительную ситуацию в его конструкторе при помощи throw. Создаю экземпляр класса и передаю параметрами в конструктор нужные значения, ошибку ловиться, но после конструкции try{} catch(){} экземпляр класса создан в try, его уже не видно ниже в программе. class A { public: A(int x) { if (x<0) throw...
C++ Функция ввода и вывода массива вещественных чисел Полный код программы. Оформить в виде функции ввод и вывод массива вещественных чисел. Если можно с подробными комментариями. https://www.cyberforum.ru/ cpp-beginners/ thread2410760.html
0 / 0 / 0
Регистрация: 04.12.2014
Сообщений: 38
0

Классы, поля, методы - C++ - Ответ 13363967

28.02.2019, 09:43. Показов 375. Ответов 5
Метки (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день господа. Хотелось бы услышать мнение и советы более опытных людей. Пишу приложение для дипломной, но в силу неопытности возникает много вопросов. Кратко опишу суть приложения: приложение дополненной реальности, юзер считывает маркер наклеенный на объекте(любое возможное устройство, но в первую очередь станки т.к. специальность автоматизация машиностроения) при помощи камеры мобильного устройства, в свою очередь ему выводятся текстовые метки, указывающие наименование составных частей(в дальнейшем будет реализованы визуальные справки по эксплуатации устройств);

Приведу сразу код программы.
ClassMain.h
Кликните здесь для просмотра всего текста

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#pragma once
#include <string>
class ClassMain
{
protected:
    int id;
    std::string name;
public:
    void GetId(int &id);
    std::string GetName();
    void SetName(std::string name);
    virtual void WriteToFile(std::string path) = 0;
    virtual void ReadFromFile(std::string path) = 0;
public:
    ClassMain(int id, std::string name);
    ~ClassMain();
};


ClassMain.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
#include "pch.h"
#include "ClassMain.h"
#include <string>
 
std::string ClassMain::GetName() {
    return this->name;
 
}
 
void ClassMain::SetName(std::string name) {
    this->name = name;
 
}
 
void ClassMain::GetId(int &id) {
    id = this->id;
}
 
 
ClassMain::ClassMain(int id, std::string name)
{
    this->id = id;
    this->name = name;
}
 
ClassMain::~ClassMain()
{
}


ClassMarker.h
Кликните здесь для просмотра всего текста

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#pragma once
#include "ClassMain.h"
#include <string>
class ClassMarker :
    public ClassMain
{
private:
    int id;
    std::string name;
    int visible;
    int collide;
    double  marker_coord[4][2];
    double  trans[3][4];
    double  marker_width;
    double  marker_center[2];
public:
    ClassMarker(int id, std::string name, int visible, int collide, double **marker_coord, int marker_coordx, int marker_coordy,
        double **trans, int transx, int transy, double marker_width, double *marker_center, int marker_centerx);
    void WriteToFile(std::string path) override;
    void ReadFromFile(std::string path) override;
    ~ClassMarker();
};


ClassMarker.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
47
48
49
50
51
52
53
54
55
56
#include "pch.h"
#include "ClassMarker.h"
#include <fstream>
#include <string>
 
 
ClassMarker::ClassMarker(int id, std::string name, int visible, int collide, double **marker_coord, int marker_coordx, int marker_coordy,
    double **trans, int transx, int transy, double marker_width, double *marker_center, int marker_centerx) : ClassMain(id, name)
{
    this->id = id;
    this->name = name;
    this->visible = visible;
    this->collide = collide;
    for (int i = 0; i < marker_coordx; i++) {
        for (int j = 0; j < marker_coordy; j++)
            this->marker_coord[i][j] = marker_coord[i][j];
    }
 
    for (int i = 0; i < transx; i++) {
        for (int j = 0; j < transy; j++)
            this->marker_coord[i][j] = trans[i][j];
    }
 
    this->marker_width = marker_width;
 
    for (int i = 0; i < marker_coordx; i++) {
        this->marker_center[i] = *marker_center++;
    }
 
 
}
 
void ClassMarker::WriteToFile(std::string path) {
    std::fstream file(path);
    file.open(path, std::fstream::in);
    if (!file.is_open()) {
        throw "file not open";
    }
 
    file.write((char*), sizeof(this));
    file.close();
}
 
void ClassMarker::ReadFromFile(std::string path) {
    std::fstream file("path");
    file.open(path, std::fstream::in);
    if (!file.is_open()) {
        throw "file not open";
    }
 
    file.close();
}
 
ClassMarker::~ClassMarker()
{
}


testApp.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
#include "pch.h"
#include <iostream>
#include "ClassMarker.h"
#include "MarkerData.h"
#include <string>
 
std::string         markerdata = "Debug\\Data\\markerdata";
int             objectnum;
 
int main()
{
    setlocale(LC_ALL, "rus");
    double** arr = new double*[4];
    for (int i = 0; i < 4; i++)
        arr[i] = new double[2];
    double** arr1 = new double*[3];
    for (int i = 0; i < 3; i++)
        arr1[i] = new double[4];
 
    double arr2[2];
 
    ClassMarker marker(1, "123", 1, 1, arr, 4, 2, arr1, 3, 4, 2.0, arr2, 2);
 
    delete [] *arr;
    delete [] *arr1;
 
    marker.WriteToFile(markerdata);
 
 
    system("pause");
 
}


И собственно, в чем вопросы
У класса маркер вот такая структура полей
C++
1
2
3
4
5
6
7
8
    char       name[256];
    int        id;
    int        visible;
int        collide;
    double     marker_coord[4][2];
    double     trans[3][4];
    double     marker_width;
    double     marker_center[2];


Вернуться к обсуждению:
Классы, поля, методы C++
0
Заказать работу у эксперта
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.02.2019, 09:43
Готовые ответы и решения:

Разработать классы для описанных ниже объектов. Включить в класс методы set (…), get (…), show (…). Определить другие методы
Разработать классы для описанных ниже объектов. Включить в класс методы set (…), get (…), show (…)....

классы/дочерние классы/методы
помогите пожалуйста! надо что выводились только учебеники. чтоб былo через GetTip. h файл...

Методы и классы
добрый день) код выдает ошибку &quot;E2089 Identifier 'proc' cannot have a type qualifier&quot;. не могу...

Классы. Объекты. Методы
Доброго времени суток! Вот задачка. Я пока начинающий в этом деле, так что не очень понятно... ...

5
28.02.2019, 09:43
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.02.2019, 09:43
Помогаю со студенческими работами здесь

Классы и методы, перегрузка операторов == и !=
не могу разобраться с перегрузкой операторов == или != для 2 массивов типа char и int состоящих из...

Зачем нужны абстрактные классы и методы?
Можете объяснить в чём смысл абстрактного класса? Ведь с тем же успехом я могу написать: ...

Классы, функции методы класса, наследование
Задание: Объявите класс Tarray, создающий тип &quot;Массив&quot;. Определите элементы-данные класса: -...

Классы, конструкторы, деструкторы, методы классов
Доброго времени суток , Господа программисты. :) Очень нужна Ваша помощь. Написал программу, но...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru