Heim  >  Artikel  >  Web-Frontend  >  Was ist der Unterschied zwischen C++ und Javascript?

Was ist der Unterschied zwischen C++ und Javascript?

青灯夜游
青灯夜游Original
2022-01-18 17:34:374591Durchsuche

Unterschiede: 1. C++ ist eine statische Sprache, während JavaScript eine dynamische Sprache ist. 2. C++ ist eine kompilierte Sprache, während JavaScript eine interpretierte Sprache ist. 3. C++ hat Zeiger, während JavaScript keine Zeiger hat Eine funktionale Programmiersprache ist C++ nicht.

Was ist der Unterschied zwischen C++ und Javascript?

Die Betriebsumgebung dieses Tutorials: Windows7-System, Javascript 1.8.5 und C++ 17-Version, Dell G3-Computer.

Der Unterschied zwischen C++ und Javascript

1 C++ ist eine statische Sprache und js ist eine dynamische Sprache.

Die Unterschiede sind wie folgt:

Statische Sprache:

  • Es kann auch eine Typerkennung durchführen, wenn es nicht ausgeführt wird, und bis zu einem gewissen Grad einige logische Fehler erkennen. Aber zu viele Deklarationen machen das Programm überflüssig.

  • Wenn Sie mit dem Schreiben von Code beginnen, müssen Sie überlegen, welche Arten von Variablen und Berechnungen es sein sollten, was dem Schreiben guter, hochverfügbarer Programme förderlich ist.

  • ist nützlich für Compiler-Eingabeaufforderungen und auch zum Verständnis des Codes.

Problem: Nicht flexibel genug, kann keine Programme schreiben, ohne Typen zu definieren.

Dynamische Sprache:

  • Der größte Vorteil ist die Einfachheit des Codes.

  • Sehr flexibel.

Problem: Die Laufgeschwindigkeit ist relativ langsam und eine Typprüfung ist erforderlich. Der größte Nachteil besteht darin, dass Fehler ohne Ausführung nicht erkannt werden können.

2. C++ ist eine kompilierte Sprache und js ist eine interpretierte Sprache.

Kompilierungsprozess von C++: Vorverarbeitung->Kompilierungsoptimierung->Assembly->Link.

Js-Analysemechanismus: Vorverarbeitung (segmentierte Lesecode-Vorverarbeitung) -> Interpretation und Ausführung

3 C++ hat Zeiger, js hat keine Zeiger.

Bei der Zuweisung in C++ werden alle Basistypen direkt kopiert, und benutzerdefinierte Typen können aufgrund der Existenz von Zeigern wählen, ob sie eine tiefe Kopie (Kopie) oder eine flache Kopie (Referenz) durchführen möchten. In js sind alle grundlegenden Typzuweisungen Kopien und alle anderen Typzuweisungen sind Referenzen.

4. JS ist eine funktionale Programmiersprache, C++ nicht.

Js behandelt Funktionen als Objekte, die als Eingabeparameter und Ausgabewerte von Funktionen (Funktionen höherer Ordnung) verwendet werden können.

C++ Wenn Sie eine Funktion als Eingabeparameter anderer Funktionen verwenden möchten, also eine Funktion höherer Ordnung implementieren möchten, müssen Sie einen Funktionszeiger übergeben (häufig wird ein zusätzlicher Typparameter (void *) als Parameter übergeben des Funktionsparameters).

5. Die Vererbung von C++ basiert auf Klassen und die Vererbung von js basiert auf Prototypen

In C++ erfolgt die Vererbung über Klassen. Es entspricht eher dem intuitiven Denken der Menschen. Gleichzeitig kann eine Klasse nach der Generierung nicht mehr geändert werden, es sei denn, ihre Definition wird geändert. (Rubys Vererbung basierend auf offenen Klassen kann den Inhalt der Klasse nach der Definition beliebig anhängen)

In js erfolgt die Vererbung über die Prototypenkette. Es ist auch möglich, die Prototypenkette nach der Definition zu ändern. Gleichzeitig können Sie auch die Prototypkette des integrierten Typs ändern, um den integrierten Typ zu erweitern (mit Vorsicht verwenden, Monkey-Patching kann dazu führen, dass das integrierte Objekt erheblich geändert wird und unvorhersehbares Verhalten erzeugt).

【Verwandte Empfehlungen: Javascript-Lern-Tutorial

Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen C++ und Javascript?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn