à l'aide de l'espace de noms du Système; dans Visual Studio 2013
Je suis en train d'utiliser le Console::SetCursorPosition(int, int) méthode. Quand j'ai ajouter la ligne using namespace System;
, comme illustré dans l'exemple C++ de la précédente, la documentation MSDN, j'obtiens l'erreur "Error: name must be a namespace name"
. J'ai essayé des trucs pour un couple d'heures maintenant, mais malheureusement sans succès. J'ai rencontré une tonne de documentation de Visual Studio 2010 et 2012, mais très peu pour 2013. Le plus proche que je suis venu est Fichiers Lib que l'éditeur de liens d'Entrée. Les étapes 1 à 3 sont assez faciles, mais l'étape 4 n'est pas clair pour moi: "Modifier la propriété Dépendances Supplémentaires.". En regardant ce qui existe déjà, il me semble que je peux juste ajouter un .fichier lib. Mais je n'ai pas de Système.lib.
Tellement frustré, si confus.
Comment puis-je utiliser l'espace de noms System dans Visual Studio 2013 Update 4 pour le C++?
System
espace de noms est de la partie .Net framework, qui est à la disposition des "CLR" des projets, et non pas en natif Win32 projets C++.OriginalL'auteur Evorlor | 2015-02-28
Vous devez vous connecter pour publier un commentaire.
De formaliser et de développer sur mon commentaire, le
Console
de la classe et généralement lesSystem
de l'espace de noms sont de la partie .NET framework.Dans ce contexte, le "C++" de l'onglet inclus dans la documentation MSDN page de la Console::SetCursorPosition(int, int) méthode se réfère effectivement à la C++/CLI langue. Le C++/CLI langue est distinct (bien que volontairement similaire) à partir de la Langage C++ . En conséquence, le C++/CLI langue contient différentes constructions qui ne sont pas reconnus par le compilateur C++ d'outils utilisés lors de la compilation Win32 projets.
En d'autres termes, pour se débarrasser de la
"Error: name must be a namespace name"
d'erreur, vous devez convertir votre Win32 projet C++ pour un CLR projet. La meilleure façon de le faire serait de créer un nouveau projet, en sélectionnant l'un des modèles de vertu "Visual C++" /"CLR":L'équivalent de .fichier lib depdendencies (par rapport à votre Fichiers Lib que l'éditeur de liens d'Entrée lien) de Win32 projets pour le CLR projet serait références d'assembly. Vous pouvez généralement ajouter ces références d'assembly avec "Ajouter une référence" sous "Propriétés Communes , des Références" les propriétés du projet:
Cependant, dans votre cas particulier, vous pouvez très bien trouver que la
System
référence d'assembly est déjà inclus dans le cadre de la CLR modèle de projet.Vous voudrez peut-être vérifier Comment: Ajouter ou Supprimer des Références sur MSDN pour plus de détails.
Enfin, si vous voulez absolument manuellement convertir un projet Win32, vous devez définir la "Common Language Runtime Support" propriétés du projet sous "Général" et le "C/C++ , le Général" onglets à l'un des
/clr
,/clr:pure
,/clr:safe
ou/clr:oldSyntax
(selon les besoins de votre application; si vous êtes juste de jouer autour, vous pourriez commencer avec/clr
) pour toutes les Configurations et les plates-formes de spécifier la cible .Net framework version en modifiant directement le .vcxproj (comme indiqué dans cette réponse). Vous aussi, vous avez encore besoin d'ajouter de l'assemblée des dépendances qu'avec le nouveau projet de l'approche ci-dessus.OriginalL'auteur SleuthEye
Vous devez définir
Common Language Runtime Support (/clr)
dans les Propriétés de Configuration - Général:Et dans les Propriétés de Configuration - C/C++ - Général:
OriginalL'auteur Saullo G. P. Castro
Vous avez un projet de
Win32 Console Application
et et vous utilisez.NET
espace de noms. Dans l'Application Console Win32 seulement 4-5 espace de noms sont là, dans la bibliothèque standard, y comprisstd
. Essayezusing namespace std;
en haut.OriginalL'auteur 0x6773