Ir ao conteúdo
  • Cadastre-se
Teixeira47

Duvida na separação da interface da implementação em Visual C++

Posts recomendados

Ola pessoal do Clube do Hardware!

Fui fazer um simples teste do livro do deitel de separação de interface da implementação com uma classe e nao consigo compilar no Visual C++.

Criei um projeto para a classe "Time" (de exemplo).

Coloquei num header file:

"Time1.h":

-----

#ifndef TIME1_H

#define TIME1_H

class Time {

public:

Time();

void setTime( int, int, int);

void printMilitary();

void printStandard();

private:

int hour;

int minute;

int second;

};

#endif

-----

A implementação coloquei num source file:

"Time1.cpp":

-------------------------------

#include <iostream>

using std::cout;

#include "time1.h"

Time::Time()

{

hour = minute = second = 0;

}

void Time::setTime( int h, int m, int s )

{

hour = ( h >= 0 && h < 24 ) ? h : 0;

minute = ( m >= 0 && m < 60 ) ? m : 0;

second = ( s >= 0 && s < 60 ) ? s : 0;

}

void Time::printMilitary()

{

cout<< ( hour < 10 ? "0" : "" ) <<hour<<":"

<< ( minute < 10 ? "0" : "" )<<minute;

}

void Time::printStandard()

{

cout<<( ( hour == 0 || hour == 12 ) ? 12 : hour % 12 )

<<":"<< ( minute < 10 ? "0" : "" ) <<minute

<<":"<< ( second < 10 ? "0" : "" ) <<second

<< ( hour < 12 ? " da manhã" : " da tarde" );

}

----------------------------

E enfim o teste da classe coloquei em outro projeto, criei um "Teste.cpp":

-------------------------------

#include <iostream>

using std::cout;

using std::endl;

#include "time1.h"

int main()

{

Time t;

cout<< "A hora militar inicial é ";

t.printMilitary();

cout<<"\nA hora padrão inicial é ";

t.printStandard();

t.setTime( 13, 27, 6);

cout<<"\n\nHora militar depois de setTime é ";

t.printMilitary();

cout<<"\nHora padrão depois de setTime é ";

t.printStandard();

t.setTime( 99, 99, 99 );

cout<<"\n\nApós tentar inicialização inválida:\n"

<<"Hora militar: ";

t.printMilitary();

cout<<"\nHora padrão: ";

t.printStandard();

cout<<endl;

return 0;

}

-------------------------

O erro de compilação do "Teste.cpp" é:

Compiling...

teste.cpp

c:\documents and settings\administrador\meus documentos\visual studio 2008\projects\teste\teste\teste.cpp(6) : fatal error C1083: Cannot open include file: 'time1.h': No such file or directory

Build log was saved at "file://c:\Documents and Settings\Administrador\Meus documentos\Visual Studio 2008\Projects\Teste\Teste\Debug\BuildLog.htm"

Teste - 1 error(s), 0 warning(s)

========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

Se alguem puder me ajudar ficarei muito grato.

Agradeço desde já.

Compartilhar este post


Link para o post
Compartilhar em outros sites
Este tópico está parado há muito tempo. Certifique-se que a sua mensagem tem a ver com o tema sendo discutido. Obrigado.

Junte-se à conversa

Você pode postar agora e cadastrar-se depois. Se você tem uma conta, faça o login para postar.

Visitante
Responder

×   Você colou conteúdo com formatação.   Restore formatting

  Só é possível ter até 75 emoticons.

×   O link foi automaticamente convertido para mostrar o conteúdo.   Clique aqui para mostrá-lo como link comum

×   Seu texto anterior foi restaurado.   Limpar o editor

×   You cannot paste images directly. Upload or insert images from URL.






Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

GRÁTIS: minicurso “Como ganhar dinheiro montando computadores”

Gabriel TorresGabriel Torres, fundador e editor executivo do Clube do Hardware, acaba de lançar um minicurso totalmente gratuito: "Como ganhar dinheiro montando computadores".

Você aprenderá sobre o quanto pode ganhar, como cobrar, como lidar com a concorrência, como se tornar um profissional altamente qualificado e muito mais!

Inscreva-se agora!