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

Зачем нужны конструктор и деструктор класса? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Замена символов в Мемо http://www.cyberforum.ru/cpp-beginners/thread52787.html
Надо написать программу которая при вводе в Мемо текста заменяла буквы на другие. А на Ц ,И на Ъ и т.д надо задать все 33 буквы рус алфавита,типа шифрование. Подскажите как осуществить.
C++ Вводится матрица... Вводится матрица А построчно. Выберите из матрицы А подматрицу В, заданной суммой элементов или сообщите, что такой подматрицы не существует. Реализовать ввод\вывод с консоли и из файла. Задачу сделал, но интересны варианты(от простейшего). http://www.cyberforum.ru/cpp-beginners/thread52786.html
Сумма цифр и количество цифр C++
Задача: Вводится два натуральных числа. Нужно написать функции для того, чтобы: (1) найти сумму цифр составляющих это число (545 = 14), и количество цифр в этом числе (5464 = 4), (2) сравнить суммы 1го и 2го числа и вывести ответ, сумма какого числа больше. С 1м условием справился, а вот как сделать 2е, не могу сообразить...подскажите #include <iostream.h> #include <windows.h> char...
Динамические списки C++
Всем привет. Подскажите пожалуста идеи. Дано стек, разработать функцию, которая формирует два новых стеки: первая содержит числа из исходного стека с нечетными номерами, а второе - с четными
C++ Найдите два слова с наилучшей рифмой и еще две задачи. http://www.cyberforum.ru/cpp-beginners/thread52765.html
Дан текст (набор слов). Найдите в нем два слова с наилучшей рифмой. Наилучшей будем считать рифму, когда у пары слов совпадает наибольшее число букв с конца. Формат входных данных Первая строчка входных данных содержит натуральное число n, 2<=n<=10000. Затем идет n различных строк, каждая из которых содержит одно слово (слова могут состоять из латинских и русских букв в кодировке KOI-8,...
C++ Отличие static от объявление переменных ДО функции main Может быть я не совсем точно выразился в заголовке. Интересует отличие объявление переменных ДО функции main и объявление через static. По моим ощущениям если объявлено через static, то переменная существует всегда(даже при выходе из блока где она использовалась). Но ведь если просто объявить переменные до функции main они также будут видны везде. Поясните в чем загвоздка. Заранее спасибо. ... подробнее

Показать сообщение отдельно
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9382 / 5432 / 916
Регистрация: 25.07.2009
Сообщений: 10,428
27.09.2009, 21:26     Зачем нужны конструктор и деструктор класса?
Да,
так
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 <iostream>
using std::cin;
using std::cout;
using std::endl;
 
#include <cmath>
 
class X {
private:
    double *x;
    double *y;
    double *z;
public:
    X(double x1, double y1, double z1);
    ~X();
    friend void printX(const X &obj);
    friend void runX(const X &obj);
};
 
X::X(double x1=0, double y1=0, double z1=0){
    x = new double(x1);
    y = new double(y1);
    z = new double(z1);
}
 
X::~X(){
    delete x;
    delete y;
    delete z;
}
 
void printX(const X &obj){
    cout << *(obj.x) << '\t' << *(obj.y) << '\t' << *(obj.z) << endl;
}
 
void runX(const X &obj){
    double x,y,z,res;
    x = *(obj.x);
    y = *(obj.y);
    z = *(obj.z);
    res=(pow(y,x+1))/(pow(fabs(y-2),1.0/3)+3)+(x+y/2)/(2*fabs(x+y))*pow(x+1,(-1/sin(z))); // original
    cout << res << endl;
}
 
 
int main( void ){
    double a, b, c;
    cout << "Enter three double values for X: ";
    cin >> a >> b >> c;
    X o(a,b,c);
    cout << "Print X values:" << endl;
    printX(o);
    cout << "Calculate X values:" << endl;
    runX(o);
    return 0;
}
работает. При чём с оригинальной версией функции.
 
Текущее время: 23:15. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru