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

C++

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 131, средняя оценка - 4.73
DiegoGonzalez
0 / 0 / 0
Регистрация: 09.04.2009
Сообщений: 22
#1

Идентификатор не найден - C++

28.06.2009, 13:18. Просмотров 16701. Ответов 16
Метки нет (Все метки)

что не так....кажется все уже проверил...
error C3861: sum_full: идентификатор не найден c:\documents and settings\admin\рабочий стол\compressed_matrix\compressed_matrix\main.cpp

C++
1
2
3
4
5
6
7
    full_matrix mf1(number_of_rows);    // создадим матрицу 1
    mf1.init_full(number_of_rows);   // заполним значениями
 
    full_matrix mf2(number_of_rows);    // создадим матрицу 2
    mf2.init_full(number_of_rows);   // заполним значениями
        
    sum_full(full_matrix &mf1,full_matrix &mf2,number_of_rows); //суммирование

full_matrix - класс хранения матриц, mf1 и mf2 - две матрицы, init_full(number_of_rows) - компонентная функция класса для генерации матриц,там все норма...
Ошибка с функцией суммирования матриц....
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Vourhey
Почетный модератор
6473 / 2248 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
28.06.2009, 13:20     Идентификатор не найден #2
sum_full где объявлена? Где определена?
Если код небольшой, ты выкладывание его здесь облегчило бы задачу.
DiegoGonzalez
0 / 0 / 0
Регистрация: 09.04.2009
Сообщений: 22
28.06.2009, 13:25  [ТС]     Идентификатор не найден #3
C++
1
    double sum_full(full_matrix &mf1,full_matrix &mf2, int number_of_rows); //суммирование матриц
- объявление в заголовочном файле ***.h

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
double full_matrix::sum_full(full_matrix &mf1,full_matrix &mf2,int number_of_rows){
    
    double Prod=1;
    int i,j;     
         for (i=0;i<number_of_rows;i++)
                  {
                      for (j=0;j<number_of_rows;j++){
                        printf("%8.3lf", mf1.mf[i][j] + mf2.mf[i][j]);
                        if (mf1.mf[i][j] + mf2.mf[i][j]!= 0) Prod=Prod*(mf1.mf[i][j] + mf2.mf[i][j]);
 
                      }
                  printf("\n");
                }
    return Prod; 
}
-вот она в ресурсном файле...возвращает произведение ненулевых элементов

Добавлено через 1 минуту 18 секунд
Могу выложить весь код.....только программа большая очень...на 5 файлов разбита...
Vourhey
Почетный модератор
6473 / 2248 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
28.06.2009, 13:25     Идентификатор не найден #4
C++
1
full_matrix::sum_full
она метод класса? Если да, то почему вызываешь ее, как обычную функцию? В каком ресурсном? Подключи заголовочный файл к своему.
DiegoGonzalez
0 / 0 / 0
Регистрация: 09.04.2009
Сообщений: 22
28.06.2009, 13:27  [ТС]     Идентификатор не найден #5
Цитата Сообщение от Vourhey Посмотреть сообщение
C++
1
full_matrix::sum_full
она метод класса? Если да, то почему вызываешь ее, как обычную функцию? В каком ресурсном? Подключи заголовочный файл к своему.
Заголовочный файл подключен...да,она в классе....и ээээ...а как нужно вызывать тогда....?
Vourhey
Почетный модератор
6473 / 2248 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
28.06.2009, 13:28     Идентификатор не найден #6
Как я понимаю full_matrix &mf1 говорит,нам, что full_matrix это класс, все-таки. Тогда почему ты хочешь вызвать просто так его метод sum_full? вызывай, указывая имя класса, если это static.

Добавлено через 45 секунд
Цитата Сообщение от DiegoGonzalez Посмотреть сообщение
Заголовочный файл подключен...да,она в классе....и ээээ...а как нужно вызывать тогда....?
Здравстуй, *, новый год. Ну почитай про классы и узнаешь как вызывать. На ошибку я тебе уже указал ) попробуй сам справиться.

Добавлено через 47 секунд
не посмотрел на объявление. Да, это не static. Значит, вызывай для объекта.
DiegoGonzalez
0 / 0 / 0
Регистрация: 09.04.2009
Сообщений: 22
28.06.2009, 13:29  [ТС]     Идентификатор не найден #7
Да,Full_matrix это класс...но я просто не знаю как вызывать функцию как метод класса...можно пример чтоли...был бы очень признателен...
Vourhey
Почетный модератор
6473 / 2248 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
28.06.2009, 13:33     Идентификатор не найден #8
Блин, совсем лентяи уже. Вот у меня есть объект, например, object1 класса class1. У него метод method1. И вызываю я его:
C++
1
object1.method1();
а если он статический, то:
C++
1
class1::method1();
Почитай, а? Про классы полно информации везде. Больше ни слова тебе не скажу

Добавлено через 55 секунд
Вот ты пишешь, код и ты должен, хотя бы, знать, что пишешь. Потому что
C++
1
mf1.init_full(number_of_rows);
в твоем коде и есть вызов метода.
DiegoGonzalez
0 / 0 / 0
Регистрация: 09.04.2009
Сообщений: 22
28.06.2009, 13:33  [ТС]     Идентификатор не найден #9
Здравстуй, *, новый год. Ну почитай про классы и узнаешь как вызывать. На ошибку я тебе уже указал ) попробуй сам справиться.
Добавлено через 47 секунд
не посмотрел на объявление. Да, это не static. Значит, вызывай для объекта.
пробую....вот уже неделю пишу прогу...
Vourhey
Почетный модератор
6473 / 2248 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
28.06.2009, 13:35     Идентификатор не найден #10
пробуй, пробуй.
DiegoGonzalez
0 / 0 / 0
Регистрация: 09.04.2009
Сообщений: 22
28.06.2009, 13:37  [ТС]     Идентификатор не найден #11
Цитата Сообщение от Vourhey Посмотреть сообщение
Вот ты пишешь, код и ты должен, хотя бы, знать, что пишешь. Потому что
C++
1
mf1.init_full(number_of_rows);
в твоем коде и есть вызов метода.
Да я знаю че пишу...весь код сам составлял а не откуда то...проблема в том что тут два объекта....собственно поэтому и не знаю как метод вызывать....
5ый день тероризирую гугл со своей программой...
Vourhey
Почетный модератор
6473 / 2248 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
28.06.2009, 13:40     Идентификатор не найден #12
Вот мне первая мысль приходит, глядя на:
C++
1
double full_matrix::sum_full(full_matrix &mf1,full_matrix &mf2,int number_of_rows)
Функции передаются ссылки на объекты. С внутренними структурами она не работает. На фига ты ее в класс запихал? Разберись с архитектурой своих классов. Я бы ее вынес из класса. блин, че я те все рассказываю

Добавлено через 52 секунды
Да я знаю че пишу...весь код сам составлял а не откуда то
В том-то и проблема Не предполагай его правильным.
DiegoGonzalez
0 / 0 / 0
Регистрация: 09.04.2009
Сообщений: 22
28.06.2009, 13:42  [ТС]     Идентификатор не найден #13
Цитата Сообщение от Vourhey Посмотреть сообщение
Вот мне первая мысль приходит, глядя на:
C++
1
double full_matrix::sum_full(full_matrix &mf1,full_matrix &mf2,int number_of_rows)
Функции передаются ссылки на объекты. С внутренними структурами она не работает. На фига ты ее в класс запихал? Разберись с архитектурой своих классов. Я бы ее вынес из класса. блин, че я те все рассказываю

Добавлено через 52 секунды

В том-то и проблема Не предполагай его правильным.
проблема...нужно чтобы функция была именно внутренней...
Vourhey
Почетный модератор
6473 / 2248 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
28.06.2009, 13:43     Идентификатор не найден #14
Цитата Сообщение от DiegoGonzalez Посмотреть сообщение
проблема...нужно чтобы функция была именно внутренней...
кто сказал? что за идиотизм? внутренняя функция, которая не работает ни с одной внутренней переменной? Бредятина. Сделай тогда ее статичной и вызывай из класса. Ну подумай уж своей головой, она тебе для чего...
DiegoGonzalez
0 / 0 / 0
Регистрация: 09.04.2009
Сообщений: 22
28.06.2009, 13:46  [ТС]     Идентификатор не найден #15
Цитата Сообщение от Vourhey Посмотреть сообщение
кто сказал?
Хм...препод....тот который собственно и давал задание....это по идее курсовая....(1 курс,ОНФ,УГАТУ,г.Уфа)
Vourhey
Почетный модератор
6473 / 2248 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
28.06.2009, 13:49     Идентификатор не найден #16
я не думаю, что препод тебе, сказал, что эта именно эта функция должна быть именно в классе. Брось, это бред полный. Пиши по-нормальному. А если не хочешь, то выше я тебе написал вариант. В любом случае, ничто не мешает тебе ее вызывать и из объекта. Все варианты - рабочие.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.06.2009, 13:51     Идентификатор не найден
Еще ссылки по теме:

C++ C3861 идентификатор не найден
B zero идентификатор не найден C++
C++ WinAPI PowerSetActiveScheme: идентификатор не найден
C++ Идентификатор не найден
C++ Sort() идентификатор не найден

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

Или воспользуйтесь поиском по форуму:
DiegoGonzalez
0 / 0 / 0
Регистрация: 09.04.2009
Сообщений: 22
28.06.2009, 13:51  [ТС]     Идентификатор не найден #17
Цитата Сообщение от Vourhey Посмотреть сообщение
я не думаю, что препод тебе, сказал, что эта именно эта функция должна быть именно в классе. Брось, это бред полный. Пиши по-нормальному. А если не хочешь, то выше я тебе написал вариант. В любом случае, ничто не мешает тебе ее вызывать и из объекта. Все варианты - рабочие.
Перечитал задание...так и есть....
Спасибо за помощь....)
Yandex
Объявления
28.06.2009, 13:51     Идентификатор не найден
Ответ Создать тему
Опции темы

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