Anonymní profil Badik – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil Badik – Programujte.comAnonymní profil Badik – Programujte.com

 

Příspěvky odeslané z IP adresy 212.96.160.–

Kajik
C / C++ › Programy v C++
23. 2. 2013   #171841

#3 Hoffik
Není to úplně ono, ale tohle mi bude stačit, MOC DĚKUJI!!! :)

Kajik
C / C++ › Programy v C++
22. 2. 2013   #171820

Nikdo nic? :(

Badik
C / C++ › Hlavičkové soubory
29. 1. 2013   #170811

Zdravím všechny,

mám dotaz ohledně hlav.souboru. a to následující:

Mějme soubor.h a v něm kod

#ifndef _SOUBOR_H
#define _SOUBOR_H

prikazy;

#endif

A moje otázka: Proč, k čemu slouží, z jakého důvodu se musí vkládat #ifndef _SOUBOR_H a #define _SOUBOR_H na začátek zdrojového kodu? Zkoušel jsem to psát i bez toho a fungovalo to také, ale v každém zdrojovém kodu co jsem prošel to bylo uvedeno tak bych rád věděl proč. Díky za odpovědi, nebo případné odkazy na danou problematiku. :)

Koder
C / C++ › objekt v hlavičkovém souboru
2. 1. 2013   #169678

Tak už mi to funguje, problém byl v tom že jsem jednotlivé soubory(.cpp;.cpp;.h) neměl pod jedním projektem, myslel jsem že stačí jen když jsou v jedné složce.

Díky moc za pomoc, už jsem myslel že se dnes nevyspím. :)

Koder
C / C++ › objekt v hlavičkovém souboru
2. 1. 2013   #169659

#2 Furynka
Jak ho tedy zkompilovat? Zkoušel jsem si stahnout i jine programy a také jsem měl problém s kompilací. 

Koder
C / C++ › objekt v hlavičkovém souboru
2. 1. 2013   #169653

#2 Furynka
Kompiluji v programu DEV C++ ve win7, když jsem podobne delal jen funkce (bez obejktu) tak mi to fungovalo. :(

Koder
C / C++ › objekt v hlavičkovém souboru
2. 1. 2013   #169647

Zdravim mam nasledujci kody:

 soubor poprve.cpp

#include <cstdlib>
#include <iostream>
#include "pr.h"

using namespace std;

int main(void)
{ 
    int k, l;
	cout <<"\nNacti prvni cislo ";
	cin >> k;
	cout <<"Nacti druhe cislo ";
	cin >> l;
	
    Vypocty Prvni;
    Prvni.NastavHodnoty(k,l);
	cout << "Soucet cisel "<< k << " a " << l << " je ";
	cout << Prvni.Soucet(k,l) <<"\n";
	
	system("pause");
	return 0;
}

soubor pr.h

#include <iostream>
#ifndef _PR_H_
#define _PR_H_

class Vypocty                     
{
public:					    	   
	int Soucet(int, int);          
    int NastavHodnoty(int, int);   
private:					   
	int prvni_promenna;   
	int druha_promenna; 
};

#endif

soubor prf.cpp


#include "pr.h"

int Vypocty::NastavHodnoty(int, int) 
{                                   
  prvni_promenna = k;
  druha_promenna = l;
}

int Vypocty::Soucet(int, int)  
{                             
   return prvni_promenna + druha_promenna;   
}

A ted duvod proc sem pisu, pri kompilaci mi to neustale tahe chybu

[Linker error] undefined reference to `Vypocty::NastavHodnoty(int, int)'

[Linker error] undefined reference to `Vypocty::Soucet(int, int)'

ld returned 1 exit status

Nevite nekdo prosím kde je chyba?

 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032021 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý