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

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

Войти
Регистрация
Восстановить пароль
 
 
r00712
0 / 0 / 0
Регистрация: 07.09.2013
Сообщений: 114
#1

Не распознает класс - C++

07.02.2014, 20:17. Просмотров 722. Ответов 30
Метки нет (Все метки)

Вообщем код файлы Prepod.h:
C++ (Qt)
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
#ifndef PREPOD_H_
#define PREPOD_H_
#include <string>
 // объявление класса
class Prepod
{
private:
    std::string fam; //фамилия
    std::string name; //имя
    std::string post ;//должность
    std::string kaf; //кафедра
public:
    
        void set_name(std::string prepod_name);
 
        // Получение имени препода
        std::string get_name();
 
        void set_fam(std::string prepod_fam);
         std::string get_fam();
 
 
         void set_post(std::string prepod_post);
         std::string get_post();
 
         void set_kaf(std::string prepod_kaf);
         std::string get_kaf();
 
};
 
 
#endif
Тут все норм, определяю поля с данными класса и методы.
Файл prepod.cpp:
C++ (Qt)
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
#include "prepod.h"
#include "stdafx.h"
#include <string>
 
 
 void Prepod::set_name(std::string prepod_name)  // Установка имени препода
        {
            Prepod::name = prepod_name;
        }
 
        // Получение имени препода
        std::string Prepod::get_name(){
          return name;
        }
 
        void Prepod::set_fam(std::string prepod_fam)// Установка фамилии препода
        {
            Prepod::fam=prepod_fam;
        } // Получение фамилии препода
         std::string Prepod::get_fam(){
          return fam;
        }
 
 
         void Prepod::set_post(std::string prepod_post) // Установка должности препода
         {
            Prepod::post=prepod_post;
        } 
         // Получение имени препода
         std::string Prepod::get_post(){
          return post;
        }
 
         void Prepod::set_kaf(std::string prepod_kaf){
            Prepod::kaf=prepod_kaf;
        }
         std::string Prepod::get_kaf(){
          return kaf;
        }
И тут же сразу начинаются ошибки, типа "error C2653: Prepod: не является именем класса или пространства имен" , хотя Prepod-как раз имя класса!
И соответственно ошибки - post,kaf,name,fam - необъявленные идентификаторы...

Добавлено через 4 минуты
Помогите пожалуйста!
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.02.2014, 20:17
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Не распознает класс (C++):

Есть класс A и класс B, класс B вложен в класс A и вложен в него, как классу B получить доступ к переменным класса A просто по имени? - C++
На самом деле ничё фантастического я не прошу, ведь: template &lt;class T&gt; class matrix { friend class diagonal; ...

G++ не распознает nullptr - C++
Компилятор gcc4.5 флаг -std=gnu++0x но не распознает nullptr почему то Build Prog_name -fmessage-length=0 -std=gnu++0x -fPIC...

Не распознает String - C++
Не распознает String. Как исправить? #include &quot;stdafx.h&quot; #include &lt;cstdio&gt; #include &lt;cstdlib&gt; #include &lt;iostream&gt; #include...

Не распознает русские буквы. - C++
// vc.cpp: определяет точку входа для консольного приложения. // #include &quot;stdafx.h&quot; // Дописывает в файл фамилию, имя и номер...

Почему не распознает _TCHAR? - C++
Добрый вечер. Подскажите, почему не работает строка int _tmain(int argc, _TCHAR* argv) В чем проблема с _TCHAR? Собсно вот код: ...

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

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
KOPOJI
Модератор
Эксперт HTML/CSSЭксперт PHP
16698 / 6624 / 431
Регистрация: 12.06.2012
Сообщений: 19,875
Завершенные тесты: 1
07.02.2014, 21:09 #16

Не по теме:

даже не знаю, в чем может быть дело - все должно работать. Попробуйте пересоздать все заново



Добавлено через 56 секунд
а все файлы находятся в одной директории?
0
r00712
0 / 0 / 0
Регистрация: 07.09.2013
Сообщений: 114
07.02.2014, 21:11  [ТС] #17
Да, все в одной директории?
0
KOPOJI
Модератор
Эксперт HTML/CSSЭксперт PHP
16698 / 6624 / 431
Регистрация: 12.06.2012
Сообщений: 19,875
Завершенные тесты: 1
07.02.2014, 21:13 #18
Попробуйте пересоздать проект заново.. Даже не знаю, что там может быть не так
0
r00712
0 / 0 / 0
Регистрация: 07.09.2013
Сообщений: 114
07.02.2014, 21:23  [ТС] #19
Цитата Сообщение от KOPOJI Посмотреть сообщение
Попробуйте пересоздать проект заново.. Даже не знаю, что там может быть не так
Пересоздал проект, все те же ошибки в том же кол-ве
0
KOPOJI
Модератор
Эксперт HTML/CSSЭксперт PHP
16698 / 6624 / 431
Регистрация: 12.06.2012
Сообщений: 19,875
Завершенные тесты: 1
07.02.2014, 21:31 #20
Цитата Сообщение от r00712 Посмотреть сообщение
файлы Prepod.h:
Цитата Сообщение от r00712 Посмотреть сообщение
#include "prepod.h"
В винде вроде как регистр не важен, но.. Приведите все названия файлов к нижнему регистру, может, дело в этом..
Ну и, попробуйте сделать описанное здесь http://stackoverflow.com/questions/1...namespace-name
0
Kuzia domovenok
1891 / 1746 / 118
Регистрация: 25.03.2012
Сообщений: 5,925
Записей в блоге: 1
07.02.2014, 21:44 #21
Что в stdafx.h?
0
r00712
0 / 0 / 0
Регистрация: 07.09.2013
Сообщений: 114
07.02.2014, 21:45  [ТС] #22
Спасибо, попробую..
0
KOPOJI
07.02.2014, 21:45
  #23

Не по теме:

Kuzia domovenok, это, вроде, стандартный VS-овский файл, который она везде пихает..

0
r00712
0 / 0 / 0
Регистрация: 07.09.2013
Сообщений: 114
07.02.2014, 21:45  [ТС] #24
в stdafx
C++ (Qt)
1
2
3
4
5
6
#pragma once
 
#include "targetver.h"
 
#include <stdio.h>
#include <tchar.h>
0
KOPOJI
Модератор
Эксперт HTML/CSSЭксперт PHP
16698 / 6624 / 431
Регистрация: 12.06.2012
Сообщений: 19,875
Завершенные тесты: 1
07.02.2014, 21:46 #25
r00712, ага, "а теперь рекурсивно обойдите подключаемые в stdafx файлы.."
0
r00712
0 / 0 / 0
Регистрация: 07.09.2013
Сообщений: 114
07.02.2014, 21:54  [ТС] #26
Что, простите?
0
KOPOJI
07.02.2014, 21:56
  #27

Не по теме:

а, не, ничего...

1
r00712
0 / 0 / 0
Регистрация: 07.09.2013
Сообщений: 114
07.02.2014, 21:59  [ТС] #28
Ошибку понял, очень вам благодарен
0
Kuzia domovenok
1891 / 1746 / 118
Регистрация: 25.03.2012
Сообщений: 5,925
Записей в блоге: 1
07.02.2014, 22:13 #29
KOPOJI, ну как бээ.. не совсем стандартный, а вполне себе пользовательский! Майкрософт советует собирать в нём собирать все основные инклуды и как-то использует это для создания предкомпилированного заголовка! То есть тебе самому не только можно, но и нужно добавлять в stdafx заголовки (если ты вообще их хочешь использовать)!
0
KOPOJI
07.02.2014, 22:19     Не распознает класс
  #30

Не по теме:

мне вообще по барабану на VS, и не хочу я использовать никакие "stdafx".. Если захочу - сам его и создам, зачем мне его везде пихать?

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.02.2014, 22:19
Привет! Вот еще темы с ответами:

Не распознает синтаксис диапазона case - C++
#include&lt;iostream&gt; #include&lt;conio.h&gt; #include&lt;math.h&gt; void main(void) { using namespace std; setlocale(LC_ALL, &quot;Russian&quot;);...

Компилятор не распознает объявление класса - C++
Суть, есть класс map , основное поле это struct MapTile{ Object_map * Obj; char Fon; }; Object_map - это а.б.к....

простейшею программу распознает как вирус - C++
Написав казалось бы самую простую и обычную програму антивирусы ругаются на WIN 32 троян. Проверка на вирусы (также ругается аваст,...

Не распознает функцию tg (тангенс) с библиотекой math.h - C++
не могу обозначить переменную тангенса,с библиотекой даже не распознает. условия(фото): Вычислить для своего варианта Y, задав значения...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
07.02.2014, 22:19
Ответ Создать тему
Опции темы

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