Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Samsung Micro RGB R95H, il primo LCD a LED rossi, verdi e blu di Samsung alla prova del banco di misura
Samsung Micro RGB R95H, il primo LCD a LED rossi, verdi e blu di Samsung alla prova del banco di misura
Il primo Micro RGB di Samsung per il salotto è il 65 pollici da 2.749 euro. Sul banco di misura abbiamo rilevato 2.000 nit di picco, nero assoluto con il local dimming e il 91,4% del BT.2020, il colore più ampio che abbiamo misurato su un LCD
iPhone 18 Pro: la recensione del miglior iPhone compatto di sempre
iPhone 18 Pro: la recensione del miglior iPhone compatto di sempre
Apple ha rinnovato iPhone 18 Pro soprattutto dentro: chip A20 Pro a 2 nm con memoria affiancata al SoC, camera di vapore tre volte più ampia, Dynamic Island più piccola del 25% grazie a Face ID sotto il display e fotocamera principale con diaframma variabile da f/1.48 a f/4. Lo abbiamo misurato al colorimetro e nei benchmark, usato con iOS 27 e messo alla prova in fotografia tra laghi, borghi e interni poco illuminati
Panasonic, 30 anni di Toughbook: la "Bibbia" di mille regole dietro i nuovi G3 e 34
Panasonic, 30 anni di Toughbook: la "Bibbia" di mille regole dietro i nuovi G3 e 34
A Londra, per il trentennale dei Toughbook, Panasonic ha presentato il tablet G3 e il 2-in-1 34. Con Jon Tucker, a capo dell'ingegneria europea, abbiamo parlato di ciò che non si vede: batterie, antenne, porte seriali e accorgimenti nati sul campo
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 29-09-2009, 21:35   #1
_Claudio
Senior Member
 
L'Avatar di _Claudio
 
Iscritto dal: Aug 2005
Messaggi: 579
[.net] Rilevare dangling object

Come da titolo, voglio rilevare se un oggetto
System:: Drawing::Graphics^
è stato inizializzato o meno.

In questo caso ho un oggetto di questo tipo, ma in generale come si può rilevare se un oggetto gestito è stato inizializzato o meno?

Poi un'altra domanda che non centra nulla:
come è possibile fare l'overload dell'operatore = senza creare le relative getters e copiare membro a membro da un oggetto all'altro?

Se io ho una classe reticolo e creo:
Codice:
reticolo a;
reticolo b = reticolo(x, y, z);

e faccio:
a = b;
devo definire:
Codice:
reticolo^ operator=(reticolo r) {
this->a = r.geta();
this->b = r.getb();
this->c = r.getc();
return this;
}
Non c'è un modo più semplice?
_Claudio è offline   Rispondi citando il messaggio o parte di esso
Old 29-09-2009, 22:22   #2
tomminno
Senior Member
 
Iscritto dal: Oct 2005
Messaggi: 3306
Quote:
Originariamente inviato da _Claudio Guarda i messaggi
Come da titolo, voglio rilevare se un oggetto
System:: Drawing::Graphics^
è stato inizializzato o meno.

In questo caso ho un oggetto di questo tipo, ma in generale come si può rilevare se un oggetto gestito è stato inizializzato o meno?
Mi sembra di capire che stai facendo riferimento al C++/CLI.
Non ti basta verificare se l'oggetto è != nullptr?

Quote:
Poi un'altra domanda che non centra nulla:
come è possibile fare l'overload dell'operatore = senza creare le relative getters e copiare membro a membro da un oggetto all'altro?

Se io ho una classe reticolo e creo:
Codice:
reticolo a;
reticolo b = reticolo(x, y, z);

e faccio:
a = b;
devo definire:
Codice:
reticolo^ operator=(reticolo r) {
this->a = r.geta();
this->b = r.getb();
this->c = r.getc();
return this;
}
Non c'è un modo più semplice?
Wow qui stai un pò mischiando C++ e C++/CLI, definisci l'operatore copia come se fossi in C++ ma gli fai ritornare una reference .NET.
Perchè non usare esclusivamente reference .NET?
Codice:
reticolo^ a = nullptr;
reticolo^ b = gcnew reticolo(x, y, z);

a = b;
tomminno è offline   Rispondi citando il messaggio o parte di esso
Old 29-09-2009, 22:55   #3
_Claudio
Senior Member
 
L'Avatar di _Claudio
 
Iscritto dal: Aug 2005
Messaggi: 579
Quote:
Originariamente inviato da tomminno Guarda i messaggi
Mi sembra di capire che stai facendo riferimento al C++/CLI.
Non ti basta verificare se l'oggetto è != nullptr?



Wow qui stai un pò mischiando C++ e C++/CLI, definisci l'operatore copia come se fossi in C++ ma gli fai ritornare una reference .NET.
Perchè non usare esclusivamente reference .NET?
Codice:
reticolo^ a = nullptr;
reticolo^ b = gcnew reticolo(x, y, z);

a = b;
Dunque nullptr funziona... avevo bisogno della parolina magica.

Può sembrare che io mi sia ammattito ma purtroppo ho una classe gestita (C++/CLI) che accede ad un oggetto graphics e mi gestisce il disegno in base a vari parametri.
Mi sono ammazzato scrivendo l'overload dell'operatore = e costruttori copia quando invece mi ero solo dimenticato un ^ nella definizione... mi sembrava strano che mi vedeva l'oggetto intero e non come riferimento, mannaggia a me, un intero pomeriggio perso così.

Non capisco se questo sia il bello o il brutto del realizzare un software.

Comunque grazie 1000, la ruggine inizia a scrostarsi piano piano, anni di Java e programmazione sul web sono deleteri rispetto alla gestione diretta di TUTTO che si fa con C++.
_Claudio è offline   Rispondi citando il messaggio o parte di esso
Old 29-09-2009, 23:56   #4
tomminno
Senior Member
 
Iscritto dal: Oct 2005
Messaggi: 3306
Quote:
Originariamente inviato da _Claudio Guarda i messaggi
Comunque grazie 1000, la ruggine inizia a scrostarsi piano piano, anni di Java e programmazione sul web sono deleteri rispetto alla gestione diretta di TUTTO che si fa con C++.
Di niente ma...
quello lì NON E' C++.
E' C++/CLI che a dispetto del nome ha poco a che spartire con il vero C++.
tomminno è offline   Rispondi citando il messaggio o parte di esso
Old 30-09-2009, 08:48   #5
_Claudio
Senior Member
 
L'Avatar di _Claudio
 
Iscritto dal: Aug 2005
Messaggi: 579
Quote:
Originariamente inviato da tomminno Guarda i messaggi
Di niente ma...
quello lì NON E' C++.
E' C++/CLI che a dispetto del nome ha poco a che spartire con il vero C++.
Lo so, e maledico il giorno che la microsoft ha deciso di tradurre tutto in CLI cambiando notazioni e quant'altro... potevano lasciare almeno la sintassi uguale al C++... troppo semplice.

Il programma che sto facendo ha le classi base in C++ puro, e l'interfaccia Windows Forms in C++/CLI, e quando devo integrare pani e pesci sono sempre testate al muro.
_Claudio è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Samsung Micro RGB R95H, il primo LCD a LED rossi, verdi e blu di Samsung alla prova del banco di misura Samsung Micro RGB R95H, il primo LCD a LED rossi...
iPhone 18 Pro: la recensione del miglior iPhone compatto di sempre iPhone 18 Pro: la recensione del miglior iPhone ...
Panasonic, 30 anni di Toughbook: la "Bibbia" di mille regole dietro i nuovi G3 e 34 Panasonic, 30 anni di Toughbook: la "Bibbia...
realme C100x, lo smartphone economico con la batteria da 7500 mAh. La recensione realme C100x, lo smartphone economico con la bat...
Star Wars Zero Company è l'erede di XCOM 2 Star Wars Zero Company è l'erede di XCOM ...
Ricarica wireless dinamica fino a 150 kW...
Troppi report invalidi generati dall'IA:...
Furto di identità su scala nazion...
HPE vende i primi sistemi AMD Helios per...
Suno AI nel mirino dell'Antitrust: conte...
Xiaomi avrebbe cancellato il suo prossim...
WINDTRE BUSINESS rinnova l’offerta mobil...
BMW inaugura la fabbrica di batterie da ...
Googlebook apre al modding: bootloader s...
Denuvo non molla, vuole scoprire chi &eg...
Il miglior portatile tuttofare a basso p...
Gli agenti di OpenAI hanno mandato in ti...
Follie Amazon Prime: Zenbook è un...
MicroSD SanDisk in offerta Prime Day: Ul...
Steve Jobs, 15 anni dopo: John Ternus e ...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 21:31.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v