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

Разделить программу на файлы - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ do while фунция http://www.cyberforum.ru/cpp-beginners/thread758245.html
Здравствуйте, вот есть код приведенный ниже,прости те за культуру написания, но суть задания в том чтобы выполнить do while с вычислением ещё 1 раз, учитывая условия. // 3.2.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include "math.h" #include "iostream" using namespace std;
C++ Уроки WIndows Form Aplications (БЕСПЛАТНО) Дайте ссылку на сайт с хорошими видео-уроками по WIndows Form Aplications ( Visual Studio 2010 C++) Буду сильно благодарен! http://www.cyberforum.ru/cpp-beginners/thread758242.html
Упорядочить элементы стека методом выбора с обменами C++
#include "stdio.h" #include "iostream" #include "stack" using namespace std; int main() { stack<int> S1;
Нужно разделить эту строку на 3 части и вывести на экран. C++
Здравствуйте! Вот задача: К примеру у нас есть строка длина которой кратная 3. Нужно разделить эту строку на 3 части и вывести на экран. Вот мой код: #include <cstdio> #include <iostream> #include <cstring>
C++ Найдите все симметричные палиндромы http://www.cyberforum.ru/cpp-beginners/thread758200.html
Найдите все симметричные палиндромы из интервала . Объяснение: палиндром - это число, которое читается одинаково справа налево и слева направо, то есть именно число равно перевернутом числу.
C++ создать список в котором введенная строка переворачивается создать список в котором введенная строка переворачивается подробнее

Показать сообщение отдельно
tokar2
25 / 25 / 1
Регистрация: 09.11.2012
Сообщений: 229
10.01.2013, 22:07     Разделить программу на файлы
Помогите мне разделить программу на три файла: сам класс, функции к нему, и функция main.
Сам класс
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
#ifndef ARRAY1_H
#define ARRAY1_H
 
#include <iostream.h>
 
class Array{
      
      friend ostream &operator<<(ostream &, Array &);
      friend istream &operator>>(istream &, Array &);
public:
       Array(int =10);
       Array(const Array &);
       ~Array();
       int getSize() const;
       const Array &operator=(const Array &);
       
       int operator==(const Array &) const;
       int operator!=(const Array &) const;
       
       int &operator[](int);
       static int getArrayCount();
       
private:
        int *ptr;
        
        int size;
        static int arrayCount;
        
};
 
#endif
Вот эту программу нужно разделить на два файла: функции и главная функция main
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
152
153
154
#include <iostream.h>
#include <stdlib.h>
#include <assert.h>
#include "array1.h"
 
int Array::arrayCount=0;
 
Array::Array(int arraySize)
{
                 ++arrayCount;
                 size=arraySize;
                 ptr=new int [size];
                 assert(ptr!=0);
                 
                 for(int i=0;i<size;++i)
                   ptr[i]=0;
                 }
Array::Array(const Array &init)
{
                   ++arrayCount;
                   size=init.size;
                   ptr=new int [size];
                   assert(ptr!=0);
                   
                   for(int i=0;i<size;i++)
                     ptr[i]=init.ptr[i];
                   }
Array::~Array()
{
         --arrayCount;
         delete [] ptr;
  }
  
int Array::getSize() const {return size;}
 
const Array &Array::operator=(const Array &right)
{
      if(&right != this){
                delete [] ptr;
                size = right.size;
                ptr = new int [size];
                assert(ptr!=0);
                
                for(int i=0;i<size;i++)
                   ptr[i]=right.ptr[i];
                   }
                   return *this;
}
 
int Array::operator==(const Array &right) const
{
    if(size!=right.size)
      return 0;
    for(int i=0;i<size;i++)
      if(ptr[i]!=right.ptr[i])
        return 0;
      
      return 1;
}
 
int Array::operator!=(const Array &right) const
{
    if(size!=right.size)
      return 1;
    for(int i=0;i<size;i++)
      if(ptr[i]!=right.ptr[i])
        return 1;
      
      return 0;
}
 
int &Array::operator[](int subscript)
{
    assert(0<=subscript && subscript < size);
    
    return ptr[subscript];
}
 
int Array::getArrayCount(){return arrayCount;}
 
istream &operator>>(istream &input, Array &a)
{
        for(int i=0;i<a.size;i++)
          input>>a.ptr[i];
          
        return input;
        }
ostream &operator<<(ostream &output, Array &a)
{
        for(int i=0;i<a.size;i++){
           output<<a.ptr[i]<<" ";
           
           if((i+1)%10==0)
             output<<endl;
             }
        
        return output;
}
 
 
 
 
        int main()
{
    cout<<"Number created array = "<<Array::getArrayCount()<<endl;
    
    Array integers1(7),integers2;
    
    cout<<"Number created array = "<<Array::getArrayCount()<<endl<<endl;
    
    cout<<"Size array integers1 = "<<integers1.getSize()<<endl<<"Array after set value:"<<endl<<integers1<<endl;
    
    cout<<"Size array integers2 = "<<integers2.getSize()<<endl<<"Array after set value:"<<endl<<integers2<<endl;
    
    cout<<"Enter 17 int namber:"<<endl;
    
    cin>>integers1>>integers2;
    
    cout<<"After enter array contains:"<<endl<<"integers1: "<<integers1<<"integers2: "<<integers2<<endl;
    
    cout<<"Rating: integers1 != integers2"<<endl;
    
    if(integers1 != integers2)
      cout<<"They are not equal"<<endl;
    
    Array integers3(integers1);
    
    cout<<endl<<"Size array integers3 = "<<integers3.getSize()<<endl<<"Array after set value:"<<endl<<integers3<<endl;
    
    cout<<"integers1 = integers2"<<endl;
    
    cout<<"integers1:"<<integers1<<endl<<"integers2:"<<integers2<<endl;
    
    cout<<"Rating: integers1 == integers2"<<endl;
    
    if(integers1==integers2) 
      cout<<"They are equal"<<endl<<endl;
    
    cout<<"Integers1[5] == "<<integers1[5]<<endl;
    
    cout<<"integers1[5]=1000"<<endl;
    integers1[5]=1000;
    
    cout<<"integers1: "<<integers1<<endl;
    
    cout<<"integers1[15] = 1000, error, maxlength"<<endl;
    
    //integers1[15]=1000;
    
    system("pause>0");
    
    return 0;
    
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 06:21. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru