Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
0 / 0 / 1
Регистрация: 16.12.2012
Сообщений: 31

Ошибки при компиляции

22.01.2015, 20:18. Показов 1003. Ответов 18
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
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
struct XYZ
{
  double x, y, z;
}
 
double sqr(double x) {return x * x; }
 
void CalcNormals(XYZ a, XYZ b, XYZ c, XYZ& n)
{
  double wrki;
  XYZ v1, v2;
 
  v1.x = a.x - b.x;
  v1.y = a.y - b.y;
  v1.z = a.z - b.z;
 
  v2.x = b.x - c.x;
  v2.y = b.y - c.y;
  v2.z = b.z - c.z;
 
  wrki = sqrt(sqr(v1.y*v2.z - v1.z * v2.y) + sqr(v1.z * v2.x - v1.x * v2.z) + sqr(v1.x * v2.y - v1.y * v2.x));
  n.x = (v1.y * v2.z - v1.z * v2.y) / wrki;
  n.y = (v1.z * v2.x - v1.x * v2.z) / wrki;
  n.z = (v1.x * v2.y - v1.y * v2.x) / wrki;
}

Ошибки следующие - отказывается складывать (бинарный +... )
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
22.01.2015, 20:18
Ответы с готовыми решениями:

с2079 и с2228 ошибки при компиляции ниже участок кода, с которым праблема и скрины ошибки
// ГЛОБАЛЬНЫЕ ПЕРЕМЕННЫЕ bool game = true; // КЛАССЫ class Me; class mob { public: void showHpMp()

Ошибка памяти при выполнении, при компиляции не выводит ошибки
ПОмогите плс программа вводит строку символов до точки, а после вычисляет процент согласных в этой строке и выводит их в обратном порядке....

Ошибки при компиляции
Error 8 error LNK2001: unresolved external symbol "public: virtual void __thiscall Shape::Print(void)" (?Print@Shape@@UAEXXZ) ...

18
 Аватар для Tordek
58 / 51 / 38
Регистрация: 22.01.2015
Сообщений: 176
22.01.2015, 20:32
Что ты имел ввиду в 11 строке?

Добавлено через 1 минуту
XYZ - это не тип, а структура. Для того, чтобы использывать v1 и v2 как структуры типа XYZ, тебе надо было их обьявлять структурами.

Добавлено через 1 минуту
Удивляюсь, как с этим не было проблем
0
0 / 0 / 1
Регистрация: 16.12.2012
Сообщений: 31
22.01.2015, 20:33  [ТС]
И то есть как это сделать?
0
 Аватар для Tordek
58 / 51 / 38
Регистрация: 22.01.2015
Сообщений: 176
22.01.2015, 20:37
Бинарный + в 21 строке?
0
 Аватар для cooller
571 / 539 / 280
Регистрация: 25.12.2013
Сообщений: 1,456
22.01.2015, 20:38
Цитата Сообщение от Tordek Посмотреть сообщение
XYZ - это не тип, а структура. Для того, чтобы использывать v1 и v2 как структуры типа XYZ, тебе надо было их обьявлять структурами.
?
по сути, когда он создал структуру, он создал новый тип данных, и имеет право объявлять где хочет
v1,v2 - переменные типа XYZ
feniks, только вот после объявления структуры должно быть ;
3
 Аватар для OlegKri
26 / 25 / 8
Регистрация: 19.01.2015
Сообщений: 84
22.01.2015, 20:44
cooller дело говорит) ";" надо бы, а то void функции перекликается со структурным типом данным и компилятор ничего не понимает куда попал)

Добавлено через 1 минуту
тоесть с double sqr
1
0 / 0 / 1
Регистрация: 16.12.2012
Сообщений: 31
22.01.2015, 20:49  [ТС]
cooller, где именно?
C++
1
struct XYZ;
так?
0
 Аватар для cooller
571 / 539 / 280
Регистрация: 25.12.2013
Сообщений: 1,456
22.01.2015, 20:52
feniks,
C++
1
2
3
4
struct XYZ
{
  double x, y, z;
};
1
Эксперт С++
4986 / 3093 / 456
Регистрация: 10.11.2010
Сообщений: 11,170
Записей в блоге: 10
22.01.2015, 20:53
"Ошибки при компиляции"
Цитата Сообщение от feniks Посмотреть сообщение
отказывается складывать (бинарный +... )
Какая ошибка компиляции? Где плюс отказывается складывать?
0
0 / 0 / 1
Регистрация: 16.12.2012
Сообщений: 31
22.01.2015, 20:59  [ТС]
Огромное спасибо! А можно еще вопросец: в этой структуре описано вычисление нормали треугольника по координатам. у меня таких треугольника 4 - грани тетраэдра. Как затем вызывать или обращаться к данному методу, но уже с другими координатами? (я извиняюсь, что такой нубовский вопрос...)

Добавлено через 1 минуту
castaway, уже исправил, возвращаться не хочу. в описани ошибки было написано "binary +..."
0
 Аватар для OlegKri
26 / 25 / 8
Регистрация: 19.01.2015
Сообщений: 84
22.01.2015, 21:23
объект структуры, затем точка, затем метод
1
0 / 0 / 1
Регистрация: 16.12.2012
Сообщений: 31
22.01.2015, 21:34  [ТС]
Прошу прощения, а можете написать пример?
0
 Аватар для OlegKri
26 / 25 / 8
Регистрация: 19.01.2015
Сообщений: 84
22.01.2015, 21:53
вот к примеру структура. написанно правда class ну в принципи это одно и тоже в твоем случае.
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
class Matrix
{
 
    int n,m;
    double **array;
 
public:
    Matrix(Matrix & A);//--конструктор копирования
    ~Matrix(void);//---деструктор
    void OutMatrix(void);//---вывод матрицы на экран
    void EnterMatrix(void);//---ввод матрицы
    void SerchAkstrem(void); //---поиск эксремумов и их строки
    void Polindrom(void);  //---поиск чисел полиндромов
    //-----перегрузка операторов----
    Matrix&operator=(Matrix &a); //---оператор =
    Matrix operator+(Matrix &a);//---оператор +
    Matrix operator-(Matrix &a);//---оператор -
    Matrix operator*(double a);//---оператор *a
    Matrix operator/(double a);//---оператор /a
    Matrix operator*(Matrix & a);//---оператор Matrix*Matrix
    Matrix Transponiring(void);//---транспонирование матрицы
    double SkPrOnVek(Matrix b);//---сколярное произведение 2х векторов doublel Matrix1(Matrix2)
    Matrix operator-(void);//---внесение минуса в матрицу (*(-1))
    double Determinant3x3max(void);//---детерминант матрицы. 3х3-максимальный рамер матрицы
};
вот ты создаешь где-нибудь объект твоей структуры
C++
1
2
Matrix q;
    q.EnterMatrix(); // здесь вызывается  метод , в частности ввода матрицы.
p.s.
если правильно напишешь структуру с её методами, то когда будешь вызывать метод, после объекта класса, нажав точку ты будешь видеть возможные варианты

Добавлено через 1 минуту
че я объясняю))) вот как ты x,y и z вызывал, так и методы

Добавлено через 24 секунды
если что кулаком по лбу я себя стучу))
0
 Аватар для cooller
571 / 539 / 280
Регистрация: 25.12.2013
Сообщений: 1,456
22.01.2015, 21:57
OlegKri, такой "структурой" вы его только запугаете
feniks, что именно не понятно?
0
0 / 0 / 1
Регистрация: 16.12.2012
Сообщений: 31
22.01.2015, 21:59  [ТС]
можно и меня по лбу... даже нужно... а то я не знаю, что я в программировании мягко скажем - них не соображаю)

Добавлено через 1 минуту
cooller, как мне каждый раз подменять координаты для нового треугольника, чтобы дальше нормаль считалась по описанным выражениям.
0
 Аватар для cooller
571 / 539 / 280
Регистрация: 25.12.2013
Сообщений: 1,456
22.01.2015, 22:04
feniks, вам нужно создать метод в вашей структуре, который будет считать и возвращать нормаль треугольника.
Ну или сделать этот метод вне структуры, и передавать туда переменную типа XYZ
0
0 / 0 / 1
Регистрация: 16.12.2012
Сообщений: 31
22.01.2015, 22:08  [ТС]
cooller, а можно опять таки на примере, если не сложно?
0
 Аватар для OlegKri
26 / 25 / 8
Регистрация: 19.01.2015
Сообщений: 84
22.01.2015, 22:09
просто напиши функцию как есть перед мэйном в том же файле и не парься. подставляй в скобки в мэйне в ф-ю разные значения CalcNormals(XYZ a, XYZ b, XYZ c, XYZ& n) вместо a b c и n. лучше n убери совсем. и напиши так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
XYZ CalcNormals(XYZ a, XYZ b, XYZ c)
{
  double wrki;
  XYZ v1, v2;
 
  v1.x = a.x - b.x;
  v1.y = a.y - b.y;
  v1.z = a.z - b.z;
 
  v2.x = b.x - c.x;
  v2.y = b.y - c.y;
  v2.z = b.z - c.z;
 XYZ n;
  wrki = sqrt(sqr(v1.y*v2.z - v1.z * v2.y) + sqr(v1.z * v2.x - v1.x * v2.z) + sqr(v1.x * v2.y - v1.y * v2.x));
  n.x = (v1.y * v2.z - v1.z * v2.y) / wrki;
  n.y = (v1.z * v2.x - v1.x * v2.z) / wrki;
  n.z = (v1.x * v2.y - v1.y * v2.x) / wrki;
return n;
}
тогда:
C++
1
2
3
4
5
6
7
8
void main()
{
    XYZ x1,x2,x3;
x1=CalcNormals(/*тут 3 точки*/);
x2=CalcNormals(/*тут 3 точки*/);
x3=CalcNormals(/*тут 3 точки*/);
 
}
1
0 / 0 / 1
Регистрация: 16.12.2012
Сообщений: 31
22.01.2015, 22:21  [ТС]
OlegKri,
C++
1
x3=CalcNormals(/*тут 3 точки*/);
имеете в виду 3 координаты?

ааа, все, разобрался... значения a,b,c.

спасибо)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
22.01.2015, 22:21
Помогаю со студенческими работами здесь

Ошибки при компиляции
Привет. Помогите с ошибками разобратся: #include <stdlib.h> #include <iostream> #include <stdio.h> #include <string.h> ...

Ошибки при компиляции
Есть программа: #include <stdio.h> #include <io.h> #include <iostream.h> #define MEN 2 #define LF 10 #define SPACE 32 ...

Ошибки при компиляции
Если кто желает помочь и разомнуть свои навыки то прошу скомпилировать c++, я сам не смог, много ошибок! https://yadi.sk/d/yU7_65ug3ZncQY

Ошибки при компиляции
Вот такие ошибки у меня выдает при компиляции: error: stray ‘\320’ in program error: stray ‘\260’ in program Что это может быть?

Ошибки при компиляции
E2034 Cannot convert 'int' to 'char *' E2342 Type mismatch in parameter 'roman' (wanted 'char *', got 'char') #include <string.h> ...


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

Или воспользуйтесь поиском по форуму:
19
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru