Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.84/120: Рейтинг темы: голосов - 120, средняя оценка - 4.84
6 / 6 / 5
Регистрация: 20.09.2016
Сообщений: 59

Исправить ошибку: 'string' does not name a type

10.11.2016, 00:19. Показов 23025. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Только начал изучать Qt. Есть задача, которую надо сделать без средств Qt, а просто на c++ и консоли.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#ifndef EMPLOYEE_H
#define EMPLOYEE_H
#include "printable.h"
#include <string>
 
 
#define us unsigned short
 
class Employee:public Printable
{
private:
    std::string _name;
    std::string _phone_num;
    std::string _adress;
    us _salary;
    us _get_start;
public:
    Employee();
    std::string GetName();
};
 
#endif // EMPLOYEE_H
вот объявление класса, но везде, где используется string выдает ошибку: 'string' does not name a type. Как её исправить, объясните пожалуйста.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
10.11.2016, 00:19
Ответы с готовыми решениями:

Исправить ошибку Method must have a return type
Задание такое) Дана строка чисел через запятую. Сформировать новую строку, состоящую из чисел кратных указанному пользователю числу....

Как исправить ошибку The type 'JFrame' is not API ?
Description Resource Path Location Type Access restriction: The type 'JFrame' is not API (restriction on required library 'C:\Program...

Как исправить ошибку StreamCorruptedException: invalid type code: AC
В файле есть 5 пользователей которые нужно добавить в HashSet, но при попытке это сделать возникает ошибка StreamCorruptedException:...

12
Заблокирован
10.11.2016, 00:47
Цитата Сообщение от wolfdaver_77 Посмотреть сообщение
. Как её исправить, объясните пожалуйста.
В коде Qt можно писать всё, что и без него. #include <string> Должно работать, может у тебя там что - то с двойными включениями или что - то в этом духе... В общем по этому отрывку ничего не скажешь, прикрепляй архив с проектом
0
6 / 6 / 5
Регистрация: 20.09.2016
Сообщений: 59
10.11.2016, 01:03  [ТС]
WarpDrive, Вот архив и скрин с ошибками, может архив не понадобится. Я уже везде стринг по отключал, ошибки те же, хз что это.
Миниатюры
Исправить ошибку: 'string' does not name a type  
Вложения
Тип файла: rar CPPQT-2016-2-PrintEmployes.rar (25.0 Кб, 6 просмотров)
0
692 / 464 / 162
Регистрация: 01.10.2015
Сообщений: 1,273
10.11.2016, 01:18
wolfdaver_77, ваш класс Employee является наследником класса Printable, который содержит чисто виртуальную функцию virtual void print() const = 0. Следовательно, класс Employee должен содержать реализацию этой функции.

Добавлено через 3 минуты
Насчет

Code
1
2
C:\Projects\CPPQT-2016-2-PrintEmployes\main.cpp:76: ошибка: 'endl' was not declared in this scope
     std::cout<<Taras.GetName()<<endl;
C++
1
#include <iostream>
в employee.h

И в целом ваша тема не имеет ни малейшего отношения к Qt, а ваше приложение - plain c++ application
0
6 / 6 / 5
Регистрация: 20.09.2016
Сообщений: 59
10.11.2016, 02:07  [ТС]
0x90h, я создал вопрос в этой теме только потому, что в Qt Creator ошибка, думал, что тут ей и место)
Спасибо за ответ.

Добавлено через 7 минут
0x90h, исправил то, на что Вы указали, но ошибок меньше не стало.
0
Заблокирован
10.11.2016, 10:46
Цитата Сообщение от wolfdaver_77 Посмотреть сообщение
исправил то, на что Вы указали, но ошибок меньше не стало.
Ох уж и стиль... Меня чуть не вывернуло, когда я проект открыл, без обид
Странные у вас преподы на Украине, заставляют делать софт на QtCreator-е, а сам Qt использовать запрещают
В общем, std::string должен нормально распознаваться, если ты конечно Qt нормально поставил... Ты знаешь, что чтоб у тебя распознавались стандартные хэдэры, я уж молчу про Qt-шные, тебе нужно ставить целиком Qt, а не только QtCreator. В комплект Qt, если ты его качаешь с официального сайта, QtCreator входит в комплект: https://www.qt.io/download-open-source/#section-2

В общем, прикрепляю архив твоего "кхе кхе" софта, который у меня собирается без ошибок, если у тебя не так - ставь Qt.
Вложения
Тип файла: rar CPPQT-2016-2-PrintEmployes.rar (22.8 Кб, 9 просмотров)
0
Заблокирован
10.11.2016, 12:28
Цитата Сообщение от Maxim Prishchepa Посмотреть сообщение
а по поводу QtCreator - не более чем IDE
Я бы сказал конкретнее, это просто IDE без всего, то есть голый редактор. У него нет ни встроенного компилятора, ни отладчика, ни сорцов стандартных типа iostrem или string там нет, вообще ничего там нет, в отличии от Visualtudio, в комплекте с которой поставляется всё. И это ТС должен чётко понимать, когда ставит QtCreator без комплекта Qt.
0
Эксперт С++
 Аватар для Maxim Prishchepa
1936 / 1048 / 109
Регистрация: 29.03.2010
Сообщений: 3,167
10.11.2016, 12:34
Цитата Сообщение от WarpDrive Посмотреть сообщение
И это ТС должен чётко понимать, когда ставит QtCreator без комплекта Qt.
думаю вряд-ли ТС ставил голый креатор, без Qt-a, если учесть:
Цитата Сообщение от wolfdaver_77 Посмотреть сообщение
Только начал изучать Qt
0
6 / 6 / 5
Регистрация: 20.09.2016
Сообщений: 59
10.11.2016, 14:53  [ТС]
WarpDrive, ставил весь qt. Преподы везде странные есть) я сам не понимаю в чем фишка, курсы называются c++/qt, а дз только по с++ было. Хотя, может я что то не понял, пришел уже после половины занятий.
И хотел бы замечания по стилю услышать, если можно, хотелось бы знать что не так, что исправить надо.

Добавлено через 7 минут
WarpDrive, при запуске вашего проекта, те же ошибки(
0
Заблокирован
10.11.2016, 15:05
Цитата Сообщение от wolfdaver_77 Посмотреть сообщение
И хотел бы замечания по стилю услышать, если можно, хотелось бы знать что не так, что исправить надо.
Ну... Там всё не так, для начала пиши хотя бы код с табуляцией, делай пустые стоки между значимыми элементами ..ой да много чего, просто соблюдай нормальный сталь форматирования. Создай какой - нибуть класс с помощью визарда QtCreator-а и посмотри, как он оформлен

Цитата Сообщение от wolfdaver_77 Посмотреть сообщение
WarpDrive, при запуске вашего проекта, те же ошибки(
Какие ошибки - то? Не понимает, что такое std::string ? Если да - то ставь нормальный Qt. Ты его небойсь через онлайн инсталлятор ставил?
0
Форумчанин
Эксперт CЭксперт С++
 Аватар для MrGluck
8216 / 5047 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
10.11.2016, 15:13
Цитата Сообщение от wolfdaver_77 Посмотреть сообщение
хотел бы замечания по стилю услышать, если можно, хотелось бы знать что не так, что исправить надо.
Замечания по поводу чуть меньше десятка строк из шапки темы?
1) define поменять на using, на крайняк typedef, если нет поддержки С++11.
2) не начинать названия переменных с нижнего подчеркивания, т.к. эти имена зарезервированы для разработчиков компиляторов. Для членов класса лучше всего подойдёт префикс m_
3) get метод желательно сделать const, ведь он не изменяет состояние класса.
4) чисто субъективно - лучше сначала давать интерфейс класса т.к. так его прощу будет найти. То, что является частью внутренней реализации как раз наоборот - прятать в конец.
5) чисто субъективно - добавить пробел перед public в наследовании класса.
6) весьма странное наследование класса Работник от "Печатаемый". Налицо нарушение MVC, но для сдачи лабы это всё равно.
0
6 / 6 / 5
Регистрация: 20.09.2016
Сообщений: 59
10.11.2016, 15:13  [ТС]
WarpDrive, да, не понимает и нет, не через онлайн инсталятор. Сейчас попробую новый проект сделать, если будут те же ошибки, установлю заново.
0
6 / 6 / 5
Регистрация: 20.09.2016
Сообщений: 59
10.11.2016, 15:19  [ТС]
MrGluck, дефайн это не моё, я скачал такой уже проект, нужно дописать решение.
А за остальное спасибо. На счет 2 пункта, я в Липпмане читал, что так удобнее называть переменные класса, о 3 пункте не подумал даже, а 6 п. это условие такое)
в общем, спасибо за конкретные замечания)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
10.11.2016, 15:19
Помогаю со студенческими работами здесь

Как исправить ошибку operator not applicable to this operand type, строка с if(28)
var c,min,b,d,i,n: Integer; a: array of integer; begin min:=10000000; d:=1; while d=1 do begin readln(n); ...

19:Error directive: Must use C++ for the type iostream...как исправить такую ошибку?
наверно я совсем тупая...но что то я не подружилась со средой С++((( помогите...не могу откомпилить...

Исправить ошибку в коде на си: (строка 60) assignment to expression with array type
#include &lt;stdio.h&gt; #include &lt;stdbool.h&gt; #include &lt;locale.h&gt; #define N 3 bool check(int a,int n) { for (int i=0; i&lt;n;...

RVALUE Ссылка, error: cannot bind non-const lvalue reference of type 'String&' to an rvalue of type 'String'|
Код не компилируется ниже 17 стандарта с++ с ошибкой error: cannot bind non-const lvalue reference of type 'String&amp;' to an rvalue of...

Как исправить ошибку redeclaration of C++ built-in type 'wchar_t' [-fpermissive] (glut.h)?
Выдаёт ошибку: 45 24 D:\Dev-Cpp\MinGW64\include\glut.h redeclaration of C++ built-in type 'wchar_t' 'Typedef unsigned short wchar_t;...


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru