Torna indietro   Hardware Upgrade Forum > Software > Programmazione

NL-LC1 è il primo dissipatore a liquido AIO di Noctua: silenzio è la parola d'ordine
NL-LC1 è il primo dissipatore a liquido AIO di Noctua: silenzio è la parola d'ordine
Dopo anni di attesa e una lunga fase di sviluppo, Noctua entra nel mercato dei dissipatori a liquido AIO con la nuova serie NL-LC1. Forte dell'esperienza maturata nel raffreddamento ad aria, l'azienda austriaca promette di portare la propria filosofia fatta di qualità costruttiva, attenzione ai dettagli e silenziosità anche in questo segmento. Abbiamo provato il nuovo sistema per scoprire se riesce a distinguersi in un mercato ormai molto competitivo.
Boox Go 10.3 (Gen II) Lumi: il tablet e-ink con Android 15 e penna, dal prezzo super
Boox Go 10.3 (Gen II) Lumi: il tablet e-ink con Android 15 e penna, dal prezzo super
Arrivato sul mercato italiano a fine marzo, la serie Boox Go 10.3 (Gen II) offre Android 15, penna da 4096 livelli e retroilluminazione opzionale (nel modello da noi provato, Lumi, presente). La serie si compone di due tablet ePaper che fanno da e-reader, blocco note digitale e persino browser, tutto a un prezzo che fa dimenticare i prodotti di brand più blasonati
Gigabyte MO32U24 OLED: il 4K a 240Hz su un pannello OLED ideale per il gaming
Gigabyte MO32U24 OLED: il 4K a 240Hz su un pannello OLED ideale per il gaming
Pannello QD-OLED da 32 pollici con risoluzione 4K, frequenza di aggiornamento a 240Hz e tempi di risposta rapidissimi: il Gigabyte MO32U24 evolve il progetto del suo predecessore MO32U e alza ulteriormente l'asticella delle prestazioni. È ancora una volta un monitor indirizzato ai giocatori più esigenti
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 18-01-2008, 20:46   #1
Morfeo XP
Senior Member
 
L'Avatar di Morfeo XP
 
Iscritto dal: Sep 2002
Messaggi: 409
[C++] domanda sui Template

Salve a tutti

Avrei un quesito da porvi...

In c++, quando creo una classe generica (cioè utilizzando i template), posso separare la dichiarazione della classe (in un file .h) dall'implementazione (in un file .cpp)?

In pratica quando faccio quanto separo una classe generica in due file, ed includo il file .h nel main, si verifica un errore in fase di compliazione.

Inoltre ho letto da qualche parte, che in effetti ha poco senso dividere una classe generica in due file, ma la dichiarazione e l'implementazione andrebbe fatta nel file .h.

Ecco un esempio...

Queue.h
Codice:
#ifndef QUEUE_H_
#define QUEUE_H_

template <class QType >class Queue
{
	QType q[20];
	int sloc, rloc;
	
public:
	Queue();
	void qput(QType);
	QType qget();
};

#endif /*QUEUE_H_*/
Queue.cpp
Codice:
#include "Queue.h"

template <class QType> Queue<QType>::Queue() 
{
	sloc = 0;
	rloc = 0;
}

template <class QType> void Queue<QType>::qput(QType i) 
{
	if(sloc==20)
	{
		return;
	}
	sloc++;
	q[sloc] = i;
}

template <class QType> QType Queue<QType>::qget() 
{
	if(rloc == sloc)
	{
		return 0;
	}
	rloc++;
	return q[rloc];
}
main.cpp
Codice:
#include "Queue.h"
#include <iostream>

using namespace std;
int main()
{
	Queue<int> coda;
	coda.qput(10);
	cout<<coda.qget();	
	return 0;
	
}

Grazie!
__________________
Sony Vaio FE11M | EeePC 901 Linux | Intel C2D E6750 | Asus P5K-E WiFi/AP | Corsair XMS2 PC 6400 2x1GB | Hitachi 7K250 80GB Sata | Hitachi 7K250 80GB Sata | Seagate 7200.10 500GB Sata | LiteOn Combo 5232K | Nec ND-3500 | GeForce 8400GS | Monitor LG L204WT| Creative Inspire 5.1 Digital 5500 | Logitech Cordless Desktop MX | Mouse MX700 | LinkSys WAG54G | Canon IP4000 | Dell X50v | Nikon Coolpix 3100 | FujiFilm FinePix S5600 | Sony Alpha 300 18-70
Morfeo XP è offline   Rispondi citando il messaggio o parte di esso
Old 18-01-2008, 21:05   #2
fek
Senior Member
 
L'Avatar di fek
 
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
Quote:
Originariamente inviato da Morfeo XP Guarda i messaggi
In c++, quando creo una classe generica (cioè utilizzando i template), posso separare la dichiarazione della classe (in un file .h) dall'implementazione (in un file .cpp)?
No. Dichiarazione e implementazione del template devono essere nella stessa unita' di traslazione dove e' instanziato. Tradotto in italiano: tutto nel .hpp
fek è offline   Rispondi citando il messaggio o parte di esso
Old 18-01-2008, 21:27   #3
Morfeo XP
Senior Member
 
L'Avatar di Morfeo XP
 
Iscritto dal: Sep 2002
Messaggi: 409
Ti ringrazio
__________________
Sony Vaio FE11M | EeePC 901 Linux | Intel C2D E6750 | Asus P5K-E WiFi/AP | Corsair XMS2 PC 6400 2x1GB | Hitachi 7K250 80GB Sata | Hitachi 7K250 80GB Sata | Seagate 7200.10 500GB Sata | LiteOn Combo 5232K | Nec ND-3500 | GeForce 8400GS | Monitor LG L204WT| Creative Inspire 5.1 Digital 5500 | Logitech Cordless Desktop MX | Mouse MX700 | LinkSys WAG54G | Canon IP4000 | Dell X50v | Nikon Coolpix 3100 | FujiFilm FinePix S5600 | Sony Alpha 300 18-70
Morfeo XP è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


NL-LC1 è il primo dissipatore a liquido AIO di Noctua: silenzio è la parola d'ordine NL-LC1 è il primo dissipatore a liquido A...
Boox Go 10.3 (Gen II) Lumi: il tablet e-ink con Android 15 e penna, dal prezzo super Boox Go 10.3 (Gen II) Lumi: il tablet e-ink con ...
Gigabyte MO32U24 OLED: il 4K a 240Hz su un pannello OLED ideale per il gaming Gigabyte MO32U24 OLED: il 4K a 240Hz su un panne...
Recensione realme 16 5G: lo smartphone con Selfie Mirror ha una batteria da 6550mAh Recensione realme 16 5G: lo smartphone con Selfi...
Come rispettare tutte le nuove regole per i monopattini elettrici? La guida per non rischiare sanzioni Come rispettare tutte le nuove regole per i mono...
Jensen Huang è andato a zappare l...
Prime Day in anticipo - giorno 3: ci son...
AMD EPYC e Instinct: accordo per fornire...
Amazon spinge Fire TV Stick 4K Select, R...
Ryzen 10000 Olympic Ridge desktop: addio...
Android 17 debutta sui Pixel: ecco cosa ...
Samsung annuncia il Galaxy Book6 Edge co...
Nuove regole per gli acquisti online: da...
I nuovi OPPO Reno 16 sono pronti al debu...
Prime Day anticipato, tutti i robot aspi...
Bug FIFA ai Mondiali 2026: chiunque avre...
Stop Killing Games bocciata: l'Europa no...
I costi dei 2 nm di TSMC potrebbero apri...
Prime Day Amazon, scope elettriche senza...
GTA 6 potrebbe registrare un numero impr...
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: 10:10.


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