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

Конструктор копирования - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Шаблоны C++ http://www.cyberforum.ru/cpp-beginners/thread427864.html
Написал template на С++, но он нифига не компилица, пишет мол типа не могу string в int преобразовать в строчке int out_param = (int)param; #include <stdio.h> #include <conio.h> #include...
C++ Необходимо найти максимальный элемент матрицы, используя несколько потоков Добрый день программисты, необходимо выполнить поиск наименьшего элемента матрицы используя количество потоков равное количеству строк данной матрицы. Каждый поток находит минимальный элемент своей... http://www.cyberforum.ru/cpp-beginners/thread427860.html
C++ Скопировать в файл F2 только четные строки из F1
Постановка задачи: Создать текстовый файл F1 не менее, чем из 10 строк и записать в него информацию Выполнить задание. При разработке алгоритма считать, что количество строк в исходном файле...
C++ Здравствуйте, как запихнуть базу данных в программу.??
Задача заключается в том что я незнаю как запихнуть информацию(база данных) во время написание программы, и очень бы хотелось чтоб вы мне помогли в этом, спс))))
C++ Напишите пример описания классa http://www.cyberforum.ru/cpp-beginners/thread427818.html
Заранее прошу прощения за ламерскую просьбу. Напишите пример описания класса а С++. Желательно попроще.
C++ Дана матрица размера N×M. Найти максимальный среди элементов тех строк|столбцов, которые упорядочены либо по возрастанию Дана матрица размера N×M. Найти максимальный среди элементов тех строк|столбцов, которые упорядочены либо по возрастанию, либо по убыванию. Если такие строки|столбцы отсутствуют, то вывести 0. ... подробнее

Показать сообщение отдельно
lemegeton
2925 / 1354 / 135
Регистрация: 29.11.2010
Сообщений: 2,725
14.01.2012, 02:49
Я несколько обескуражен. Похоже, в коде матрица на базе односвязного списка.

Пример коструктора копирования
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
#include <cstring>
#include <iostream>
 
class String {
 public:
  String(const char *string)
    : string_(strcpy(new char[strlen(string) + 1], string)) {}
  // copy constructor
  String(const String &string)
    : string_(strcpy(new char[string.size() + 1], string.cstr())) {}
  virtual ~String() {
    delete [] string_;
  }
  String &operator=(const String &other) {
    if (this != &other) {
      delete [] string_;
      string_ = strcpy(new char[other.size() + 1], other.cstr());
    }
    return *this;
  }
  const char *cstr() const { return string_; }
  size_t size() const { return strlen(string_); }
 private:
  char *string_;
};
 
int main(int argc, char *argv[]) {
  String a = "This is a string.";
  String b(a); // copy constructor
  a = "This is another string.";
  std::cout << "a: " << a.cstr() << std::endl;
  std::cout << "b: " << b.cstr() << std::endl;
}
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru