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

Перегрузка операций - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Дана квадратная матрица A[n,n] b вектор b[n]. Определить сумму положительных элементов вектора c=b*A http://www.cyberforum.ru/cpp-beginners/thread1156977.html
Дана целочисленная квадратная матрица A порядка n и вектор b размером n. Определить сумму положительных элементов вектора c=b*A
C++ В матрице найти сумму повторяющихся элементов главной диагонали Не могу понять как решить задачу! В матрице А найти сумму повторяющихся элементов главной диагонали; если она (полученная сумма) делится на три, то заполнить главную диагональ нулями. Добавлено через 5 часов 50 минут Неужели никто не может решить? Добавлено через 9 минут Помогите малоопытному программисту в этом нелёгком деле! http://www.cyberforum.ru/cpp-beginners/thread1156974.html
Возможно ли изменить начальное значение переменной? C++
У нас есть код: int main(){ const int val=5; cout<<val; //Какая то магия... } Нужно, чтобы после запуска программы начальное значение переменной менялось на другое, то есть: Запустил в первый раз программу, значение переменной 5, второй раз запустил значение переменной стало равно 10, третий раз...
C++ Удаление символа из класса строки-агрегата классов символов
Извините вопрос предыдушей задачи вынес в отдельную тему. Напоминаю. Есть класс символа ,TSymb и класс строка, TString являющийся агрегатом из n символов. Надо реализовать в TString метод удаления 1 символа. Вот часть кода #include <iostream> using namespace std; class TSymb {//символ,c печатать свое зн и отв на запрос о знач св символьного поля; public:
C++ Методы Оптимизации: Метод параллельных касательных - нужен алгоритм http://www.cyberforum.ru/cpp-beginners/thread1156920.html
Здравствуйте. Помогите пожалуйста с составлением алгоритма по методу параллельных касательных. Пытался читать литературу, но там алгоритмы в слишком "математическом" виде, и я их не очень понимаю.
C++ Массивы Функций. DirectX 11. Отобразить несколько моделей Всем привет, продолжаю пытаться изучать DirectX 11. Возникла задача отобразить более одной разной модели. Есть такая штука ID3D11DeviceContext* dirX11_d3dContext; // Контекст устройства (рисование) и многие подобные ему, она участвует в инициализации графического конвейера + в отрисовке объекта. Как нарисовать 1 объект ясно, как сделать сотню его копий тоже ясно возникла проблема с... подробнее

Показать сообщение отдельно
Yuri Matveichuk
0 / 0 / 0
Регистрация: 25.04.2014
Сообщений: 13
25.04.2014, 11:11     Перегрузка операций
Опишите пожалуйста строки(их действие и роль в программе);

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
#include <iostream>
#include <cstring>
#include <fstream>
using namespace std;
 
class String{
private:
    char *m_Str; // указатель на строку с нулём на коце
    int L; // указатель на размер строки
    void New( const char *str ); // выделение памяти
    void Del(); // удаление памяти
 
public:
    String(); // конструктор по умолчанию
    explicit String(const String &str); // конструктор копирования
    String( const char * str ); // дополнительный конструктор
    ~String(); // деструктор
    void Set();
    void Print();
    void ofile();
    String & operator=( const String & str );
};
 
void String::New( const char *str ){
    int size = strlen(str);
    m_Str = new char[size+1]; // массив для строки символов
    L = size; // длинна строки
    strcpy( m_Str, str ); // копируем строку
}
void String::Del(){
    delete [] m_Str;
  ;
}
 
String::String(){ New("\0"); }
String::String(const char *str){ New(str); }
String::String(const String &str){ New(str.m_Str); }
String::~String(){ Del(); }
 
void String::Print(){
  cout << m_Str << '\n';
}
void String::Set(){
    Del();
    char tmp[1000];
    cin.getline( tmp, 1000 );
    cin.sync();
    New(tmp); 
}
void String::ofile(){
  ofstream file;
  file.open("text.txt",ios::app);
  file<<m_Str<<endl;
  file.close();
}
String & String::operator =(const String &str){
    int j=0;
    Del();
    char *tmp=new char[str.L];
    if(str.L%2==0&&str.L>5){       //проверка условия четности
      for (int i=2; i<str.L-2;i++){
        tmp[j]=str.m_Str[i];
        j++ ;
      }
      tmp[j]='\0';
      New(tmp);
    }
    else
      New("Ne 4etnoe ili malenkaya stroka");
    delete [] tmp;
    return *this;
};
 
 
int main(){
    String s1, s2;
    s1.Set();
    s1.ofile();
    s2 = s1; // выполнение задания
    s2.Print();
    s2.ofile();
    getchar(); // пауза
    return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 02:03. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru