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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
АлександрКом
11 / 11 / 1
Регистрация: 21.10.2012
Сообщений: 345
#1

Работа с массивами в функции - C++

25.03.2014, 16:09. Просмотров 181. Ответов 0
Метки нет (Все метки)

Здравствуйте. Вопрос седующий - в программе есть 2 массива. Существует класс, в конструкторе которого я читаю эти 2 массива в переменные моего класса. В классе также есть 2 функции, одна работает с массивами(допустим, складывает поэлементно в 3-ий массив), а вторая выводит результат. Что-то такого типа:
C++
1
2
3
4
5
6
7
#include "Demodulator.h"
double* I;
double* Q; //представим, что в I и Q по 3 числа
double* r; // сюда вывожу результат
Demodulator first(I,Q,3); //вызов конструктора
    first.FM(); //выполнение сложения
    r = first.getFM();  //получение результата
Код "Demodulator.h"
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
#include "IntMath/Complex.h"
 
class Demodulator {
public:
    Demodulator(double*, double*, int);
    virtual ~Demodulator();
 
    double FM(void);
    double* getFM(void);
 
private:
    double* I;
    double* Q;
    double* resultFM;
    int count;
};
Код "Demodulator.cpp"
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
#include "Demodulator.h"
Demodulator::Demodulator(double* i,double* q, int n) {
    count=n;
    for(int j=0; j<count; j++){
        I[j]=i[j];
        Q[j]=q[j];
        }
 
}
 
Demodulator::~Demodulator() {
}
 
double Demodulator::FM(void)
{
 
    for(int k=0; k<count; k++){
       resultFM[k]=I[k]+Q[k];
    }
 
    return(0);
}
 
double* Demodulator::getFM(void)
{
    return(resultFM);
}
Проблема в том, что если после этих строчек будет другой код, то информация в r может быть изменена, и там будут уже совсем другие числа. Подскажите, как можно избежать этого?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.03.2014, 16:09
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Работа с массивами в функции (C++):

Работа с массивами - C++
Дан массив A размера N. Сформировать новый массив B того же размера по следующему правилу: элемент BK равен среднему арифметическому...

Работа с массивами - C++
Я ввожу переменную, например 456. Программа розбивает её и записьІвает в массив. int Array Array = 4; Array = 5; Array = 6;

Работа с массивами - C++
Программа, которая считывает из заранее подготовленного текстового файла, и должна сначала вывести весь текст просто на экран, потом...

Работа с массивами - C++
Подскажите пожалуйста, что значит &quot;**&quot; в данной строке? void Array(int ** array, int size); Спасибо!

Работа с массивами в С++ - C++
Доброго времени суток! Пытался составить программу, формулировка которой звучит так: Дан массив натуральных чисел n размерности m (m...

Работа с массивами - C++
Привет, как проще записать условие если дан длинный массив. Массив состоит из 25 чисел, нужно задать условие что если элемент от 0 к 14 и...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.03.2014, 16:09
Привет! Вот еще темы с ответами:

Работа с несколькими массивами - C++
Дан массив A размера N. Сформировать новый массив B того же раз-мера по следующему правилу: элемент BK равен сумме элементов массива A с...

Работа с массивами структур - C++
Операция: определить количество книг заданного пользователем автора. ,как реализовать эту операция ,нужно что бы при выборе case 2...

Работа с Массивами Структур - C++
Вновь с вопросом о помощи по заданию, которое само собой не понимаю... 1. Поля структуры: инвентарный номер книги, название, число...

Работа с одномерними массивами - C++
Написать программу, которая располагает элементы одномерного массива А в зависимости от значения параметра q или по возрастанию или по...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru