Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Błąd MVS2013
#1
Jaki jest problem? Źródło jest w pełni funkcjonalne, ale pojawia się ten błąd:     Kod:   IntelliSense: brak operatora "! =" Odpowiada argumentom operandów: std :: ofstream! = int   Oto kod, który mam w źródle     Kod:   void __cdecl cTools :: Log (const char * fmt, ...) {if (ofile! = NULL) {if (! fmt) {return; } va_list va_alist; char logbuf [256] = {0}; va_start (va_alist, fmt); _vsnprintf (logbuf + strlen (logbuf), sizeof (logbuf) - strlen (logbuf), fmt, va_alist); va_end (va_alist); ofile << logbuf << endl; }}   Po raz kolejny korzystam z Visual Studio 2013     Błąd podświetlony na czerwono
Reply
#2
Jak definiujesz terile?
Reply
#3
Nie, powiedziałem, że źródło jest całkowicie funkcjonalne i kompiluje wszystkie inne normalne ... Wszystko to przyszło z MVS 2013 Zacytować: Originally Posted by GU.Firehawk Jak definiujesz terile? dxhook.dll
Reply
#4
Zakładam, że części standardowej biblioteki zostały zmienione w nowszym studiu visual, więc być może trzeba będzie sprawdzić swoją definicję terile lub sprawdzić, czy jest ona ważna w inny sposób.
Reply
#5
Zacytować: Originally Posted by GU.Firehawk Zakładam, że części standardowej biblioteki zostały zmienione w nowszym studiu visual, więc być może trzeba będzie sprawdzić swoją definicję terile lub sprawdzić, czy jest ona ważna w inny sposób. Może najlepiej przeinstalować visual studio do wersji 2012 (tak, mam to)?
Reply
#6
Po prostu użyj is_open ().
Reply
#7
Zacytować: Originally Posted by Forza Po prostu użyj is_open (). Oo, to jest kolej. Dzięki, działa
Reply
#8
VS powinien także ci powiedzieć, że powinieneś używać _vsnprintf_s zamiast _vsnprintf ... Nie wiem, dlaczego ludzie nadal tego nie używają ...
Reply
#9
Zacytować: Napisał JustBasics VS powinien także ci powiedzieć, że powinieneś używać _vsnprintf_s zamiast _vsnprintf ... Nie wiem, dlaczego ludzie nadal tego nie używają ... To bzdura, jedynym argumentem ze strony MSDN jest to, że funkcje implementują ulepszenia bezpieczeństwa CRT. Czy to oznacza, że normalne funkcje, które są również w msvcrt, nie są bezpieczne w użyciu? Jeśli tak, wielu programistów pisze niebezpieczne oprogramowanie.
Reply
#10
Zacytować: Originally Posted by evolution536 To bzdura, jedynym argumentem ze strony MSDN jest to, że funkcje implementują ulepszenia bezpieczeństwa CRT. Czy to oznacza, że normalne funkcje, które są również w msvcrt, nie są bezpieczne w użyciu? Jeśli tak, wielu programistów pisze niebezpieczne oprogramowanie. I dlaczego VS pokazuje ostrzeżenie?
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)