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

Unresolved externals в ооп - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Сохранение и загрузка данных в файл http://www.cyberforum.ru/cpp-beginners/thread1190669.html
Добрый вечер всем. Столкнулся с какой-то элементарной проблемой, и не могу никак понять в чем траблы. Вот код: ... int main() { int k = 0; fstream f(L"Records",std :: ios :: in | std :: ios :: binary);
C++ Определить для массива A наибольшее значение произведения аj*aj-1 Определить для массива А= наибольшее значение произведения аj*aj-1/ http://www.cyberforum.ru/cpp-beginners/thread1190643.html
C++ Прокомментировать программу
#include <conio.h> #include <stdlib.h> #include <graphics.h> #include <iostream.h> class RECTANGLE{ int left,top,right,bottom; public: RECTANGLE(int,int,int,int); void show();
Нарисовать квадрат на C++ (желательно для компилятора Dev C++) C++
Всем привет! Надо нарисовать квадрат размером 20 на 20 пикселей красного цвета с координатами x - 100, y - 200 в окне размером 300 на 500 пикселей Задача очень срочная! Помогите пожалуйста!
C++ Конец файла при потоковом считывании http://www.cyberforum.ru/cpp-beginners/thread1190635.html
if (fin.eof()==0){ cout << "aaa"; int asa; asa = (int)buf; fout.write((char*)buf, sizeof(buf - asa)); } вот что я написал но не работает , мне нужно считать из 8 байт файла и узнать что при следуюшей итерации у нас конец файл будет как лучше сделать?
C++ Задание: дана строка.разработать программу которая будет считать количество слов и букв в предложении Всем, здравствуйте! Хочу помочь своей девушке в написании курсовой, и там было это задание, я как бы сам вообще не понимаю, что это такое, т.к. у меня нету программирования, а она сама плохо разбирается! Могу только сказать, что это visual studio 2013 ultimate. пожалуйста помогите кто-нибудь, будем очень благодарны! подробнее

Показать сообщение отдельно
Newchap
4 / 4 / 1
Регистрация: 17.09.2013
Сообщений: 179
28.05.2014, 16:24  [ТС]     Unresolved externals в ооп
SatanaXIII, Собственно сделал как вы сказали, аналогично для класса матрица.
Только какой-то странный результат. Прога компилится, но не выполняет действий. Т.е. надписи выводит, а вот сами действия не рабочие.
Croessmah,

Добавлено через 56 минут
Вопрос на паузе)

Добавлено через 33 минуты
Исправил это дело, только теперь при запуске функции enterarray повисает. Также, во время заполнения вектора заполняет только четные числа, нечетные почему-то пропускает. От чего вообще не знаю. Помогите плиз
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
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
// ConsoleApplication1.cpp : Defines the entry point for the console application.
//
 
#include "stdafx.h"
#include <iostream>
using namespace std;
#include <iostream>
#include <fstream>
#pragma warning(disable : 4996)
class vectr{
    int *v;
    int vlength;
public:
    vectr(); // дефолтный конструктор для возможности создания массива
    vectr(int vlength);
 
    int& operator[](int i);
    vectr operator+(vectr &t);
    vectr operator=(vectr &t);
    friend ostream& operator<<(ostream& as, vectr& u);
};
vectr::vectr(int vlength2)
{ // n - это количество векторов, а count - количество цифр в векторе
    vlength = vlength2;
    cout << vlength << endl << vlength2<<endl;
     v = new int[vlength];
}
vectr::vectr()
{ // n - это количество векторов, а count - количество цифр в векторе
    v = NULL;
}
int& vectr::operator[](int i)
{
    return v[i];
}
vectr vectr::operator+(vectr &t)
{
    vectr temp;
    for (int i = 0; i < vlength; i++)
        temp.v[i] = v[i] + t.v[i];
    return temp;
}
vectr vectr::operator=(vectr &t)
{
    for (int i = 0; i < vlength; i++)
        v[i] = t.v[i];
    return *this;
}
 
ostream& operator<<(ostream& as, vectr& u)
{
    for (int i = 0; i < u.vlength; i++)
        as << u.v[i]<<" ";
    cout << endl;
    return as;
}
 
class matrix : private vectr
{
    vectr v;
    vectr *b;
public:
    int n; int vlength;
    matrix();
    matrix(int n2, int vlength2);
    void entervalue()
    {
        for (int j = 0; j < n; j++) {
            cout << "entering new vector" << endl;
            for (int i = 0; i < vlength; i++)
            {
                cin >> v[i];
                b[j] = v; 
            }
        }
 
        cout << endl;
        for (int i = 0; i < n; i++)
            cout << b[i];
    }
 
    matrix operator+(matrix &t);
    matrix operator=(matrix &t);
    vectr& operator[](int i);
    friend ostream& operator<<(ostream& as, matrix& u);
};
matrix::matrix(int n2, int vlength2)
{   
    n = n2; vlength = vlength2;
b = new vectr[n];
}
matrix::matrix()
{
    b = 0;
}
matrix matrix::operator=(matrix &t)
{
    for (int i = 0; i < n; i++)
        b[i] = t.b[i];
    return *this;
}
matrix matrix::operator+(matrix &t)
{
    matrix temp;
    for (int i = 0; i < n; i++)
        temp.b[i] = b[i] + t.b[i];
    return temp;
}
vectr& matrix::operator[](int i)
{
    return b[i];
}
 
ostream& operator<<(ostream& as, matrix& u)
{
    cout << endl;
    for (int i = 0; i < u.n; i++)
        as << u.b[i];
    return as;
}
 
int _tmain(int argc, _TCHAR* argv[])
{ 
int n;
int vlength; // длина вектора
    cout << "enter number of vectors" << endl;
 cin >> n;
 cout << "enter length of vector" << endl;
 cin >> vlength;
 cout << "testing vectr class" << endl;
 vectr v2(vlength);
 for (int i = 0; i < vlength; i++)
     v2[i] = i++;
 for (int i = 0; i < vlength; i++)
 cout << v2[i]<<" ";
    // сделаем матрицу векторов.
    matrix Mt(n,vlength);
    Mt.entervalue();
    cout << "testing << operator for matrix class";
    cout << Mt;
    cout << "testing = operator for matrix class";
    matrix testm(n, vlength);
    cout << "enter second matrix"<<endl;
    testm.entervalue();
    Mt = testm;
    cout << Mt;
    cout << "now testing + operator" << endl;
        testm = Mt + Mt;
        cout << testm;
    return 0; // переделать для работы с шаблонами
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru