2009-08-05 11 views
14

Prima di tutto voglio chiarire che è tutto nuovo per C++, quindi questa potrebbe essere una domanda semplice e piuttosto ovvia. Nel C++ libro che sto leggendo chiamato C++ Primer, una classe è definita da scrittura:Perché ref pubblico in classe C++ definizione

class classname{ 
public: 

private: 

}; 

Tuttavia, in VS2008 il compilatore non ha ancora come questo. Ma aggiungendo il ref pubblico prima della lezione, come in:

public ref class classname{ 

passò attraverso nel compilatore. Qualcuno può spiegare per favore qual è la differenza tra la definizione solo con la classe e con la classe ref pubblica? Lo apprezzerei molto.

+1

Questa è la domanda che volevi porre: http://stackoverflow.com/questions/1195572/compiling-standard-c-in-visual-studio-non-net –

+0

"non mi piace" è un non un messaggio di errore che VS2008 produce. Se l'OP avesse specificato il messaggio di errore, forse le risposte non sarebbero state così terribili. –

risposta

21

La sintassi ref è un'estensione Microsoft utilizzata solo in Managed C++. Dai suoni delle cose che hai fatto accendere il compilatore /clr per errore durante la creazione del tuo progetto. Se tutto ciò che si vuole fare è creare veri programmi C++, allora si vorrà ripristinarlo.

+1

sì, il bit "public ref" non è standard C++ – Steg

+1

La scelta del tipo di progetto errato in Visual Studio può automaticamente attivare/clr on senza che tu te ne accorga. Volevo creare una nuova libreria DLL e ho finito per fare questo errore. Invece avrei dovuto usare il tipo di progetto Applicazione Console Win32 che non era ovvio per me come un principiante. Vedere [questa pagina MSDN] (http://msdn.microsoft.com/en-us/library/ms235636.aspx) per ulteriori dettagli. – Ben

5

Stai leggendo un libro chiamata C++ Primer che insegna il linguaggio di programmazione C++, mentre si sta tentando di creare un programma raccontare VC++ il codice è in C++/CLI, un linguaggio di programmazione diversa ....

+1

+1 La programmazione nella stessa lingua che hai imparato di solito aiuta. –

1

Are stai imparando il linguaggio standard C/C++? Se la risposta è sì allora che la sintassi è relativa del linguaggio Microsoft C++/CLI ...

un'occhiata a: C++/CLI

Provare a usare Eclipse con estensione C++, invece. Tutto ciò che serve per creare ed eseguire un programma STANDARD C++!

Eclipse download

+4

Sta leggendo un libro in C++, quindi presumo che stia imparando il C++. Perché l'annuncio di Eclipse? VC++ è un perfetto IDE/compilatore per creare un programma C++ su Windows. Hai solo bisogno di assicurarti di selezionare i giusti tipi di progetto. Un problema che esiste ancora con qualcosa come Eclipse se qualcuno decide di selezionare dire un progetto Java e poi cerca di scrivere un programma C++. – KTC

+3

@ KTC: Perché VC++ devia attivamente dal percorso ISO C++. CRT "sicuro", chiunque? – EFraim

3

Si (edit: e gli altri utenti) tagged a questa domanda con:

linguaggi di programmazione
  • Due : C++ e C++/CLI,
  • One commerciale Sviluppo integrato nt Environment (IDE) di Microsoft: Visual C++, che consente di programmare in tre lingue diverse (C, C++ e C++/CLI). Nel post si menziona Microsoft Visual Studio 2008, che è un superset di Visual C++.
  • Uno insieme di estensioni del linguaggio: Managed C++, che ha storicamente riferita ad un bel paio di cose diverse e, francamente, io non sono sicuro che cosa significa oggi :)

Tuttavia, il vostro primo obiettivo dovrebbe a impara come configurare Visual C++ per programmare nella lingua di tua scelta, C++.

Come al solito, un buon modo per trovare una risposta a questa domanda è digitarlo nella pagina "Chiedi domanda" e vedere quali domande correlate sono suggerite. Questo è il migliore, penso: compiling "standard" C++ in visual studio (non .net).

+3

* AProgrammer ha ricollocato la domanda aggiungendo C++/CLI dopo aver letto la domanda. L'OP non lo sapeva. – KTC

+0

Oops, grazie KTC. –

Problemi correlati