Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Nicht auf gelöstes Externes Symobl der Hölle.. aahh

Empfohlene Antworten

Veröffentlicht

Es ist ein leidiges Thema. Ich habe in der Hilfe nachgelesen und bin dennoch nicht schlauer geworden, was es mit den dem Fehler "Verweis auf nicht aufgelöstes externes Symbol" in Visual Studio (2009) aufsicht hat.

Hier eine Beispiel des Fehlers, ich habe ein Duzend davon:

Fehler 1 error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""class std::basic_ostream<char,struct std::char_traits<char> > & __cdecl Astro::operator<<(class std::basic_ostream<char,struct std::char_traits<char> > &,class Astro::Time const &)" (??6Astro@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@std@@AAV12@ABVTime@0@@Z)" in Funktion "_main". riset.obj

Bitte kann mir jemand sagen, woran so ein Fehler liegt?

Ein paar zusätzliche Informationen wären hier nützlich gewesen. Ich gehe einfach mal davon aus, dass Astro ein namespace ist.

Offenbar wurde in diesem Namespace ein Streamausgabeoperator für Time deklariert, aber nicht definiert.

Das kann daran liegen, dass die Definition schlicht fehlt, oder an ungünstig gesetzten using-Direktiven. Wie gesagt, mehr Informationen wären gut. Ein kompilierbares Minimalbeispiel, das den Fehler reproduziert, wäre am besten.

Hier ein Stück Code.

Dies ist meine Main.cpp.

Die anderen Dateien liegen in dem Verzeichnis astro/* sind aber nicht im Projekt inkludiert - das sollte aber egal sein, denke ich?


#include "astro/riset.hpp"

#include "astro/coord.hpp"

#include <stdlib.h>

#include <iostream>


//using namespace std;

//using namespace Astro;

//#pragma comment(lib, "Ws2_32.lib") 

int main()

{

Astro::Date	D( 1987, Astro::Oct, 4);


Astro::geoastronomic Wo( Astro::Degree(00,23,07) ,

		  Astro::Degree(52,15,00) );



Astro::Riset	r(obj, altitude, Wo);


std::cout << Wo << std::endl << D << std::endl << obj << std::endl

	     << Astro::rad_to_deg(altitude) << "°" << std::endl;


	if (!r) std::cout << r << std::endl;


	return 0;

}

Gruß, Peta

Die anderen Dateien liegen in dem Verzeichnis astro/* sind aber nicht im Projekt inkludiert - das sollte aber egal sein, denke ich?
Welche anderen Dateien?

Wenn das die Dateien sind, in denen die Funktionen aus den verwendeten Headerdateien definiert sind, musst du sie natürlich dem Projekt hinzufügen.

Ja, du hast recht.

Ich habe das ganze Projekt umgebaut. Vorher gingen war gegen Libs gelinkt und dann hatte ich vergessen, die Source-Dateien mitaufzunehmen. :old

Danke:byby:

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.