[c++] #include string: No such file or directory
Ostatnio zmodyfikowano 2014-06-30 15:23
nairu Temat założony przez niniejszego użytkownika |
[c++] #include string: No such file or directory » 2014-06-30 13:41:24 Witam, W projekcie (aplikacja winapi) mam pliki main.cpp, kalk.cpp, kalk.h, sett.rc. Potrzebuję, aby klasy korzystały ze zmiennych typu string. Includuję do wszystkich plików <string>, ale kompilator (Code::Blocks 12.11) wypluwa mi błąd jak w tytule i wskazuje na plik kalk.h Co z tym mogę zrobić? początek pliku kalk.h #include <windows.h> #include <string>
using namespace std; Później idą definicje makr - działają. Program działał normalnie do momentu, w którym zrobiłem klasy używające stringów i includowałem <string> Będę wdzięczny za pomoc. |
|
pekfos |
» 2014-06-30 14:02:50 Dołączasz kalk.h do pliku .rc? Tego nie powinno być w nagłówku. |
|
nairu Temat założony przez niniejszego użytkownika |
» 2014-06-30 14:14:20 tak, do każdego pliku jest dołączony kalk.h Dlaczego w pliku nagłówkowym nie powinienem używać namespace std? Tak, czy inaczej, gdy usunę przestrzeń nazw i pododaję std:: przed wszystkimi stringami, to wciąż nie działa i nie znajduje biblioteki. Każdy z pozostałych plików zaczyna się następująco: #include <windows.h> #include "kalk.h"
using namespace std; |
|
pekfos |
» 2014-06-30 14:54:01 Że nie powinno się używać using namespace, to tak btw. Problem jest w tym, że większości rzeczy z pliku kalk.h nie możesz dołączyć do pliku zasobów, więc musisz je warunkowo wyłączyć #ifndef RC_INVOKED
#include <string>
#endif |
|
nairu Temat założony przez niniejszego użytkownika |
» 2014-06-30 15:09:31 OK, to co zrobiłem z plikiem nagłówkowym: #include <windows.h>
#ifndef RC_INVOKED #include <string> #endif
Wywaliłem using namespace - dzięki za podpowiedź, ale wciąż będę wdzięczny za info dlaczego. Jeśli nie tutaj, to jakiś priv ;) Działa póki co, czyt nie krzyczy, że nie może znaleźć biblioteki a zmienne typu string nie powodują błędów. Dziękuję pięknie. |
|
pekfos |
» 2014-06-30 15:23:16 Wywaliłem using namespace - dzięki za podpowiedź, ale wciąż będę wdzięczny za info dlaczego. |
Zła praktyka. Jeśli nie tutaj, to jakiś priv ;) |
..podobnie jak pytanie o informacje na 'priv'.. Problem rozwiązany, temat zamkniety. |
|
« 1 » |