Добавил:
Рад, если кому-то помог Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
0
Добавлен:
01.11.2025
Размер:
1.26 Кб
Скачать
#include <iostream>
#include <locale>
using namespace std;

class point {
    double x, y, z;
public:
    // Конструктор по умолчанию
    point() : x(0), y(0), z(0) {}
    
    // Конструктор копирования
    point(const point& other) : x(other.x), y(other.y), z(other.z) {}
    
    // Деструктор
    ~point() {}
    
    // Оператор присваивания
    point& operator=(const point& other) {
        x = other.x;
        y = other.y;
        z = other.z;
        return *this;
    }
    
    void set(double x_val, double y_val, double z_val) {
        x = x_val;
        y = y_val;
        z = z_val;
    }
    
    void print() const {
        cout << "(" << x << ", " << y << ", " << z << ")" << endl;
    }
};

int main() {
    setlocale(LC_ALL, "ru_RU.UTF-8");
    
    point p1;
    p1.set(1, 2, 3);
    
    point p2 = p1; // Используется конструктор копирования
    point p3;
    p3 = p1; // Используется оператор присваивания
    
    cout << "p1: ";
    p1.print();
    cout << "p2: ";
    p2.print();
    cout << "p3: ";
    p3.print();
    
    return 0;
}
Соседние файлы в папке Лаба4