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

Перегрузка оператора + - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ создание классов http://www.cyberforum.ru/cpp-beginners/thread189293.html
Здравствуйте Помогите с созданием классов пожалуйста Заранее спасибо Написать программу на языке C++, моделирующую поведение сборщика арте- фактов (Stalker) путём создания соответствующего...
C++ Удаление последнего элемента списка А вот когда удаляешь последний элемент списка, обязательно в предпоследнем присваивать указатель на NULL? http://www.cyberforum.ru/cpp-beginners/thread189288.html
C++ возможные комбинации перестановки n чисел
Нужно вывести на экран все возможные комбинации перестановки из n заданных чисел подскажите как это эффективнее реализуати если n=3 то комбинаций 6 если 4 то 24 і так далє если бы это был...
Матрицы C++
По данной булевской квадратной матрицей А порядка m вычислить матрицу A в степени n.
C++ Мню консольного приложения http://www.cyberforum.ru/cpp-beginners/thread189273.html
написал с горем пополам прогу, к ней надо меню, сел меню делать, зашел в вот такой тупик: запустите, увидите лаг. В чем проблема?#include "stdafx.h" #include <string> #include <iostream> #include...
C++ Создать класс Vehicle, соСдержащий следующие элементы: Создать класс Vehicle, соСдержащий следующие элементы: - поле «скорость» int Speed; - поле «масса» int Mass; - метод получения массы int GetMass(); - метод остановки void Stop();... подробнее

Показать сообщение отдельно
OdNairy
7 / 7 / 1
Регистрация: 07.02.2010
Сообщений: 22
11.11.2010, 11:36
this передаётся всегда в метод класса. Потому он и называется неявный указатель.
За точность кода сейчас не ручаюсь, потому что придумываю и сразу пишу сюда =)
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
class Row {
public:
    Row();  // default constuctor
    Row(const char* s);     // copy string to class
    Row(const Row& orig);   //copy constructor
    virtual ~Row();
 
     Row& operator= (const Row&);
 
protected:
    char* arr;
    int ln;
};
 
#endif
 
//it's e.g. so without ctors
 
Row&  Row::operator =(const Row& orig){
    if(*this == orig) return *this;
 
    delete[] this->arr;
    
    ln = orig.ln;
    this->arr = new char [t.ln + 1];
 
    charset(arr,0,t.ln + 1);    //Mine func like memset(), but just for char
    strcpy(this->arr, orig.arr);
    return *this;
}
Пример взял всё тот же - со строкой ( просто недавно помогал делать, вот и остался исходник).
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru