Nie można skopilować programu w Visual Studio, a w Devc++ bez problemu.

0

Witam,
Mam program napisany w c++ w kompilatorze dev c++. Z tego kompilatora chcę zrezygnować na rzecz Microsoft Visusal studio lub Microsoft Visual C++. Problem w tym że program napisany w devie, kompiluje się bez problemu a w Microsoftowych wynalazkach wywala mi takie same błędy:

This project is out of a date:
Gra-Debug Win32

a potem:
There were build errors. Would you like to continue and run the last successful build ?
a na koniec:

Unable to start program
lokalizacja projektu
Nie możan odnaleźć określonego pliku.

Dodam że u kolegi mój kod kompiluje się bez problemu. W czym moze tkwić problem?

0

W tym że nie umiesz czytać. Masz jasno napisane że projekt się nie kompiluje. Możesz na przykład napisać JAKIE błędy kompilator wypluł przy próbie zbudowania projektu.

0

Uruchomienie nawet prostego programu typu "hello world!" pod VS wymaga znacznie więcej wiedzy i inteligencji niż to samo pod DevC++.
Owszem z inteligencją bywa różnie zaś z wiedzą u początkujących zazwyczaj krucho (jeżeli jest inaczej to już nie początkujący).
W związku z powyższym stanowczo odradzam początkującym zajmowanie się VS, ponieważ najlepiej się walczy z jednym przeciwnikiem na raz.

0
 
1>------ Build started: Project: Gra, Configuration: Debug Win32 ------
1>  main.cpp
1>c:\users\mateusz\desktop\prog\c++\project\gra\gra\macierz.h(32): error C2143: syntax error : missing ';' before '&'
1>c:\users\mateusz\desktop\prog\c++\project\gra\gra\macierz.h(32): error C2433: 'ostream' : 'friend' not permitted on data declarations
1>c:\users\mateusz\desktop\prog\c++\project\gra\gra\macierz.h(32): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>c:\users\mateusz\desktop\prog\c++\project\gra\gra\macierz.h(32): error C2061: syntax error : identifier 'ostream'
1>c:\users\mateusz\desktop\prog\c++\project\gra\gra\macierz.h(32): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>c:\users\mateusz\desktop\prog\c++\project\gra\gra\macierz.h(32): error C2805: binary 'operator <<' has too few parameters
1>c:\users\mateusz\desktop\prog\c++\project\gra\gra\main.cpp(58): error C2679: binary '<<' : no operator found which takes a right-hand operand of type 'macierz' (or there is no acceptable conversion)
(...)
1>c:\users\mateusz\desktop\prog\c++\project\gra\gra\main.cpp(221): error C2143: syntax error : missing ';' before '}'
1>  macierz.cpp
1>c:\users\mateusz\desktop\prog\c++\project\gra\gra\macierz.h(32): error C2143: syntax error : missing ';' before '&'
1>c:\users\mateusz\desktop\prog\c++\project\gra\gra\macierz.h(32): error C2433: 'ostream' : 'friend' not permitted on data declarations
1>c:\users\mateusz\desktop\prog\c++\project\gra\gra\macierz.h(32): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>c:\users\mateusz\desktop\prog\c++\project\gra\gra\macierz.h(32): error C2061: syntax error : identifier 'ostream'
1>c:\users\mateusz\desktop\prog\c++\project\gra\gra\macierz.h(32): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>c:\users\mateusz\desktop\prog\c++\project\gra\gra\macierz.h(32): error C2805: binary 'operator <<' has too few parameters
1>c:\users\mateusz\desktop\prog\c++\project\gra\gra\macierz.cpp(81): error C2664: 'sndPlaySoundW' : cannot convert parameter 1 from 'const char [11]' to 'LPCWSTR'
1>          Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
1>c:\users\mateusz\desktop\prog\c++\project\gra\gra\macierz.cpp(101): error C2872: 'ostream' : ambiguous symbol
1>          could be 'c:\users\mateusz\desktop\prog\c++\project\gra\gra\macierz.h(32) : int ostream'
1>          or       'c:\program files (x86)\microsoft visual studio 10.0\vc\include\iosfwd(636) : std::ostream'
1>c:\users\mateusz\desktop\prog\c++\project\gra\gra\macierz.cpp(101): error C2143: syntax error : missing ';' before '&'
1>c:\users\mateusz\desktop\prog\c++\project\gra\gra\macierz.cpp(101): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>c:\users\mateusz\desktop\prog\c++\project\gra\gra\macierz.cpp(101): error C2086: 'int ostream' : redefinition
1>          c:\users\mateusz\desktop\prog\c++\project\gra\gra\macierz.h(32) : see declaration of 'ostream'
1>c:\users\mateusz\desktop\prog\c++\project\gra\gra\macierz.cpp(101): error C2872: 'ostream' : ambiguous symbol
1>          could be 'c:\users\mateusz\desktop\prog\c++\project\gra\gra\macierz.h(32) : int ostream'
1>          or       'c:\program files (x86)\microsoft visual studio 10.0\vc\include\iosfwd(636) : std::ostream'
1>c:\users\mateusz\desktop\prog\c++\project\gra\gra\macierz.cpp(101): error C2872: 'ostream' : ambiguous symbol
1>          could be 'c:\users\mateusz\desktop\prog\c++\project\gra\gra\macierz.h(32) : int ostream'
1>          or       'c:\program files (x86)\microsoft visual studio 10.0\vc\include\iosfwd(636) : std::ostream'
1>c:\users\mateusz\desktop\prog\c++\project\gra\gra\macierz.cpp(101): error C2065: 'out' : undeclared identifier
1>c:\users\mateusz\desktop\prog\c++\project\gra\gra\macierz.cpp(101): error C2065: 'm' : undeclared identifier
1>c:\users\mateusz\desktop\prog\c++\project\gra\gra\macierz.cpp(101): error C2275: 'macierz' : illegal use of this type as an expression
1>          c:\users\mateusz\desktop\prog\c++\project\gra\gra\macierz.h(3) : see declaration of 'macierz'
1>c:\users\mateusz\desktop\prog\c++\project\gra\gra\macierz.cpp(101): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>c:\users\mateusz\desktop\prog\c++\project\gra\gra\macierz.cpp(101): fatal error C1903: unable to recover from previous error(s); stopping compilation
1>  Generating Code...
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

Proszę bardzo.
Przypomnę, że w devc++ i w visual c++ na komputerze kolegi kompiluje się bez problemu.

0

Do tego przydało by się wskazanie wierszy 31,32 z macierz.h wraz z deklaracją wszystkiego co w nich użyto (ewentualnie wszystkie wiersze 1..32

0

Na oko brakuje include jakiegoś (iostream?) albo using namespace std.

0

jest i iostream, i using namespace std;

0

Rozumiem że jest to tajny kod i nie mozesz go nam pokazać? o_O

0

dobra pomijając na razie ten dłuższy program.
nawet takiego nie mogę skompilować, a chyba to jest poprawne programistycznie, zresztą program przepisany z książki.

#include<iostream>

using namespace std;

int main()
{
	cout<<"Hello world"<<endl;
	return 0;
}

Zrobiłem screeny, one chyba więcej Wam powiedzą.

dodanie znacznika <code class="cpp"> - fp

0
Shalom napisał(a):

Rozumiem że jest to tajny kod i nie mozesz go nam pokazać? o_O

Nie tyle tajny, ale jest to zadanie dodatkowe, na wyższą ocenę. Nie chciałbym aby którś z kolegów np. znalazł gotowe rozwiązanie.

0

Wywal z folderu wszystkie zbędne pliki. Wygląda na to że VS próbuje użyć pliki obiektowe po skompilowane w Dev (wystarczy usunąć *.o) lub próbuje użyć biblioteki z Dev (tu trzeba pogrzebać ze ścieżkami)

0

Jakoś sobie z tym poradziłem i Visual działa, jak zaczyna kompilować to za każdym razem się pokazju ten nieszczęsny komunikat:
This project is out of a date.
Co on oznacza?

1

To oznacza, że zmieniłeś projekt od ostatniej kompilacji a używasz opcji "uruchom" zamiast "zbuduj". Gdyby visual głupio uruchomił, to byś dostał starą wersję. O ile pamiętam masz tam checkboxa, który pozwala wymusić automatyczne budowanie.

1 użytkowników online, w tym zalogowanych: 0, gości: 1