dev.gamez.lv Forum Index dev.gamez.lv
Latvian Game Developers Community
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups 

Inf3rnal iepaziist C++ :)
Goto page 1, 2  Next
 
dev.gamez.lv Forum Index -> Iesācējiem
View previous topic :: View next topic  
Author Message
Inf3rnal



Joined: 15 Jun 2006
Posts: 118
Location: Neverland

PostPosted: Tue Aug 15, 2006 5:56 pm    Post subject: Inf3rnal iepaziist C++ :)

Samērā nesen sāku apgūt šo programmēšanas valodu. Ieprikš jau bija pieredze darbaa ar Visual Basic 6. Taču pamanīju, ka atškirību ir ļoti daudz. Tāpēc noleemu grizties pēc palīdzības :)

1) Kā visvienkāršāk var izveidot kodā blokus (vb ti bija subi), interesee lai kods neizpildas vienā laidā, bet izsaucot attiecīgu bloku?
Back to top
View user's profile Send e-mail
fest



Joined: 07 Apr 2003
Posts: 187
Location: Madona

PostPosted: Tue Aug 15, 2006 7:36 pm    Post subject:

funkcijas?
visvienkāršākā f-ja:
void MyFunction()
{
//tavs kods te
}
funkcija neprasa parametrus un arī neatgriež neko.
Un vispār- tad nu gan tu salīdzināji VB vs C++. Protams atšķirības ir ļoti lielas.
_________________
Signature for rent. Good as new.
4 lines max. 80 letters.
Ls 0,02/post
Back to top
View user's profile Send e-mail
bubu
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 23 Mar 2004
Posts: 3223
Location: Riga

PostPosted: Tue Aug 15, 2006 7:54 pm    Post subject:

Iesaku pastaigāt pa linkiem http://www.cplusplus.com/doc/language/tutorial/ un palasīt, kas tajos rakstīts.
Back to top
View user's profile Send e-mail
Inf3rnal



Joined: 15 Jun 2006
Posts: 118
Location: Neverland

PostPosted: Tue Aug 15, 2006 7:55 pm    Post subject:

Ja es savu kodu ieveitošu funkcijā tas nozīmē, ka šis kods neizpildīsies tikmēr kamēr es vinju neizsaukšu. Pareizi ?
Un kā lai es izsaucu savu funkciju ? Smile
Back to top
View user's profile Send e-mail
Inf3rnal



Joined: 15 Jun 2006
Posts: 118
Location: Neverland

PostPosted: Wed Aug 16, 2006 6:32 am    Post subject:

Code:
#include <cstdlib>
#include <iostream>
#include <fstream>

using namespace std;
     
int main(int argc, char *argv[])
{
   
    Save();

    void Save()
    {
 //Mans kods
      }
   
    void Load()
    {                                 
//Mans kods
      }

    system("PAUSE");
    return EXIT_SUCCESS;
}




Ko es šeit daru nepareizi ?
Back to top
View user's profile Send e-mail
Vecais_Dumais_Laacis
Guru
Guru


Joined: 29 Jan 2004
Posts: 800

PostPosted: Wed Aug 16, 2006 7:37 am    Post subject:

tu
1) definee funkciju citaa funkcijaa
2) izsauc funkciju pirms defineeshanas
Code:
#include <cstdlib>
#include <iostream>
#include <fstream>

using namespace std;
    void Save()
    {
 //Mans kods
      }
   
    void Load()
    {                                 
//Mans kods
      }
     
int main(int argc, char *argv[])
{
   
    Save();


    system("PAUSE");
    return EXIT_SUCCESS;
}

_________________
...un ja bites buutu laachi...
Back to top
View user's profile
Inf3rnal



Joined: 15 Jun 2006
Posts: 118
Location: Neverland

PostPosted: Wed Aug 16, 2006 8:12 am    Post subject:

Emu pamanījis, ka manis kompilētie exe faili ir nežēlīgi lieli!
Piemēram programma kuraa ir tikai paris rindiņas koda sver: 464 KB (475 242 bytes)!
Tas ir normāli ?
Back to top
View user's profile Send e-mail
bubu
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 23 Mar 2004
Posts: 3223
Location: Riga

PostPosted: Wed Aug 16, 2006 10:25 am    Post subject:

1) kādu kompilētāju to izmanto (VC++, GCC, citu)? GCC ir tipiski veidot lielus .exe failus, ja tiek izmantotas iostreams/fstreams bibliotēkas. VC++ veido lielākus .exe failus, ja tām zem Code Generation/Runtime Library popcijas nav ieslēgts izmantot DLL runtime bibliotēku (tb MSVCR[T/P]XX[D].dll, kur XX ir versijas numurs, piem MSVCRT71.dll). Tad tā iekompilēs runtaimu pašā .exe failā)
2) vai tu kompilē Debug vai Release režīmā? Debug režīmā parasti tiek iekļauta debugošanai vajadzīga informācija, kas programmas darbību neietekmē, tb bez tās var mierīgi iztikt. To arī nodrošina Release mode. Papildus tam ieslēdzot dažādas optimizācijas. Abu šo režīmu opcijas protams par tvīkot pēc patikas.
Back to top
View user's profile Send e-mail
Inf3rnal



Joined: 15 Jun 2006
Posts: 118
Location: Neverland

PostPosted: Wed Aug 16, 2006 12:49 pm    Post subject:

Es izmantoju Dev-C++ 4.9.9.2
Par debug/relise kompilacijasm nav ne jausmas.... Imantoju standarto...
Back to top
View user's profile Send e-mail
fest



Joined: 07 Apr 2003
Posts: 187
Location: Madona

PostPosted: Wed Aug 16, 2006 12:56 pm    Post subject:

Devcpp izmanto GCC, tākā samierinies- exe's būs lielas. Droši vien, šo izmēru var samazināt, bet nu cik man ir bijusi pieredze ar GCC, tā kompilētie libi salīdzinājumā ar VC++ kompilētajiem ir milzīgi.
_________________
Signature for rent. Good as new.
4 lines max. 80 letters.
Ls 0,02/post
Back to top
View user's profile Send e-mail
bubu
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 23 Mar 2004
Posts: 3223
Location: Riga

PostPosted: Wed Aug 16, 2006 3:05 pm    Post subject:

programmer: Code Generation/Runtime libraries apskaties. Ja tajā figurē vārds DLL, tad tas izmanto to .dll failu. Ja nefigurē, tad neizmantos.

Tas, ka gcc dod apmēram vienādu izmēru, es jau teicu kāpēc - iostreams bilbiotēka. Tā dod pamatīgu izmēru - ap 200Kb klāt (tāpat kā ne-DLL Microsoft runtime bilbiotēka).
Back to top
View user's profile Send e-mail
elvman
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 09 Apr 2003
Posts: 1278
Location: Kuldiga

PostPosted: Wed Aug 16, 2006 10:51 pm    Post subject:

Quote:
Man arī viens jautājums. Es taisu programmu iekš VS.NET 2003 C++. Sakompilētā proga neizmanto nekādu runtaimu (MSVCRT71.dll). Kāpēc tā? Vai tā runtaima izmantošana ir atkarīga no tā, kādas f-jas es lietoju savā programmā?

Atver savu .exe failu ar notepad.Ieraudziisi rindinju - "Microsoft Visual C++ Runtime Library".Tas noziimee,ka library'js ir iekompileets tavaa .exe'ee
_________________
long time; /* know C */
Back to top
View user's profile Visit poster's website
bubu
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 23 Mar 2004
Posts: 3223
Location: Riga

PostPosted: Thu Aug 17, 2006 12:26 am    Post subject:

Tur iespējams ir drusku savādāks tekts. Bet "Runtime" vārds tur toč ir.

runtime bibliotēka vajadzīga, ja tu izmanto C/C++ standart fjas: malloc/free, strcpy/strlen/..., fopen/fread/fclose/..., cout/cin/..., sin/cos/..., utt jebko citu, kas ir standarta header failos.
C valodai: http://msdn2.microsoft.com/en-us/library/2aza74he.aspx
C++ valodai: http://msdn2.microsoft.com/en-us/library/a7tkse1h.aspx
Back to top
View user's profile Send e-mail
Display posts from previous:   
dev.gamez.lv Forum Index -> Iesācējiem All times are GMT + 2 Hours
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group