Un puntatore è un tipo di dati il cui valore si riferisce direttamente (o "punta a") un altro valore memorizzato altrove nella memoria del computer usando il suo indirizzo.
Ho sentito dire che l'inclusione di riferimenti null nei linguaggi di programmazione è "l'errore di miliardi di dollari". Ma perché? Certo, possono causare NullReferenceExceptions, ma che importa? Qualsiasi elemento del linguaggio può essere fonte di errori se utilizzato in modo improprio. E qual è l'alternativa? Suppongo invece di dire questo: …
C ha puntatori e Java ha quelli che vengono chiamati riferimenti. Hanno alcune cose in comune nel senso che indicano tutte qualcosa. So che i puntatori in C memorizzano gli indirizzi a cui puntano. Il riferimento memorizza anche l'indirizzo? In che modo differiscono se non che il puntatore è più …
Perché il maestro C Dennis Ritchie ha introdotto i puntatori in C? E perché gli altri linguaggi di programmazione come VB.NET o Java o C # li hanno eliminati? Ho trovato alcuni punti su Google e voglio ascoltare anche i tuoi commenti. Perché stanno eliminando i concetti di puntatore nelle …
Nei tuoi studi (da solo o per una lezione) hai avuto un momento "ah ah" in cui finalmente hai capito davvero i suggerimenti? Hai una spiegazione che usi per i programmatori principianti che sembra particolarmente efficace? Ad esempio, quando i principianti primi puntatori incontro in C, potrebbero semplicemente aggiungere &s …
Bene, in pratica capisco come usare i puntatori, ma non il modo migliore di usarli per fare una migliore programmazione. Quali sono i buoni progetti o problemi da risolvere che coinvolgono l'uso di puntatori in modo da poterli capire meglio?
Ho letto da qualche parte che quando si utilizza C ++ si consiglia di non utilizzare i puntatori. Perché i puntatori sono una cattiva idea quando si utilizza C ++? Per i programmatori C che sono abituati a usare i puntatori, qual è l'alternativa e l'approccio migliori in C ++?
Qualcuno può spiegare in dettaglio, come funziona esattamente la tabella virtuale e quali puntatori sono associati quando vengono chiamate funzioni virtuali. Se sono effettivamente più lenti, puoi mostrare che il tempo impiegato dalla funzione virtuale per eseguire è più dei normali metodi di classe? È facile perdere traccia di come …
Ci sono molti puntatori in C ++ ma ad essere sinceri tra circa 5 anni nella programmazione C ++ (in particolare con Qt Framework) uso solo il vecchio puntatore raw: SomeKindOfObject *someKindOfObject = new SomeKindOfObject(); So che ci sono molti altri puntatori "intelligenti": // shared pointer: shared_ptr<SomeKindofObject> Object; // unique …
Questo è un po '"un megabyte dovrebbe essere sufficiente per chiunque", ma ... Uno spazio di indirizzi flat a 64 bit consente fino a 4,3 miliardi di volte più spazio di uno spazio di indirizzi a 32 bit. Sono 17.179.869.184 GiB. Ovviamente, il passaggio da 8 bit a 16 bit …
So che i puntatori contengono indirizzi. So che i tipi di puntatori sono "generalmente" noti in base al "tipo" di dati a cui puntano. Ma i puntatori sono ancora variabili e gli indirizzi che detengono devono avere un "tipo" di dati. Secondo le mie informazioni, gli indirizzi sono in formato …
Qual è il tuo metodo preferito per dichiarare un puntatore? int* i; o int *i; o int * i; o int*i; Per favore, spiega perché. vedi anche: http://www.stroustrup.com/bs_faq2.html#whitespace
In linguaggi come C e C ++, mentre utilizziamo i puntatori alle variabili abbiamo bisogno di un'altra posizione di memoria per memorizzare quell'indirizzo. Quindi questo non è un sovraccarico di memoria? Come viene compensato? I puntatori vengono utilizzati in applicazioni con memoria insufficiente nel tempo?
Ho notato qualcosa di strano dopo aver compilato questo codice sulla mia macchina: #include <stdio.h> int main() { printf("Hello, World!\n"); int a,b,c,d; int e,f,g; long int h; printf("The addresses are:\n %0x \n %0x \n %0x \n %0x \n %0x \n %0x \n %0x \n %0x", &a,&b,&c,&d,&e,&f,&g,&h); return 0; } Il …
In C ++ un argomento di riferimento a una funzione consente alla funzione di fare riferimento a qualcos'altro: int replacement = 23; void changeNumberReference(int& reference) { reference = replacement; } int main() { int i = 1; std::cout << "i=" << i << "\n"; // i = 1; changeNumberReference(i); std::cout …
Di recente ho iniziato a studiare il C ++ e, dato che la maggior parte delle persone (secondo quanto ho letto), sto lottando con i puntatori. Non nel senso tradizionale, capisco cosa sono, e perché vengono utilizzati e come possono essere utili, tuttavia non riesco a capire in che modo …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.