Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    4,826

    [c++]template specializzazione e .cxx .hxx

    ciao.
    Ho questo esempio:
    .h:
    codice:
    #pragma once
    #include <string>
    #include <iostream>
    template <typename T>
    class CProva
    {
    public:
    	CProva<T>();
    
    	T setx(T val);
    
    };
    
    template <>
    class CProva <int>
    {
    public:
    	CProva<int>(){};
    	int setx(int val);
    	void pp();
    };
    .cpp
    codice:
    #include "StdAfx.h"
    #include "Prova.h"
    #include <stdio.h>
    #include <iostream>
    using namespace std;
    
    template <typename T>
    CProva<T>::CProva(void)
    {
    }
    
    template <typename T>
    T CProva<T>::setx(T val)
    {
    	return 1;
    	
    }
    
    template <>
    int CProva<int>::setx(int val)
    {
    	return 2;
    	
    }
    ottengo quest'errore in vc 9(vs 2008):
    Error 2 error C2910: 'CProva<int>::setx' : cannot be explicitly specialized c:\template\template\prova.cpp 26

    se invece metto tutto nel .h funziona correttamente.
    Ora quello che voglio capire è dove devo mettere la dichiarazione e dove l'implementazione quando uso i template.
    poi ho visto in librerie o esempi le estensioni .cxx o .hxx , so che è semplicemente un estensione ma hanno un significato particolare relativo ai templates?

    grazie.
    ciao.

  2. #2
    Utente di HTML.it L'avatar di shodan
    Registrato dal
    Jun 2001
    Messaggi
    2,381
    http://msdn.microsoft.com/en-us/libr...8VS.71%29.aspx

    poi ho visto in librerie o esempi le estensioni .cxx o .hxx , so che è semplicemente un estensione ma hanno un significato particolare relativo ai templates?
    Nessun significato particolare. Puoi chiamarli anche x.tplh e x.tplc, non cambia nulla.
    This code and information is provided "as is" without warranty of any kind, either expressed
    or implied, including but not limited to the implied warranties of merchantability and/or
    fitness for a particular purpose.

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    4,826
    grazie risolto

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.