• Downloads
  • ! Read Me !
  • Μαθήματα
  • Φοιτητικά
  • Τεχνικά Θέματα
  • Συζητήσεις
  • Happy Hour!
  • About THMMY.gr
 V  < 
Search:  
Welcome, Guest. Please login or register.
June 18, 2025, 02:32:32 am

Login with username, password and session length
Links
  Thmmy.gr portal
   Forum
   Downloads
   Ενεργ. Λογαριασμού
   Επικοινωνία
  
  Χρήσιμα links
   Σελίδα τμήματος
   Βιβλιοθήκη Τμήματος
   Elearning
   Φοιτητικά fora
   Πρόγραμμα Λέσχης
   Πρακτική Άσκηση
   Ηλεκτρονική Εξυπηρέτηση Φοιτητών
   Διανομή Συγγραμμάτων
   Ψηφιακό Καταθετήριο Διπλωματικών
   Πληροφορίες Καθηγητών
   Instagram @thmmy.gr
   mTHMMY
  
  Φοιτητικές Ομάδες
   ACM
   Aristurtle
   ART
   ASAT
   BEAM
   BEST Thessaloniki
   EESTEC LC Thessaloniki
   EΜΒ Auth
   IAESTE Thessaloniki
   IEEE φοιτητικό παράρτημα ΑΠΘ
   SpaceDot
   VROOM
   Panther
  
Πίνακας Ελέγχου
Welcome, Guest. Please login or register.
June 18, 2025, 02:32:32 am

Login with username, password and session length

Αναζήτηση

Google

THMMY.gr Web
Πρόσφατα
Πρακτική Άσκηση ΤΗΜΜΥ 201...
by chris_p30
[Today at 00:45:33]

[Μεταφορά και Διανομή ΗΕ]...
by Nikos_313
[Today at 00:10:29]

Ισραήλ - Ιράν: Πόλεμος στ...
by Katarameno
[June 17, 2025, 21:32:50 pm]

[Ψηφιακά Ολοκληρωμένα Κυκ...
by tzortzis
[June 17, 2025, 21:25:42 pm]

[Εφ.Θερμοδυναμική] Γενικέ...
by PAPARI69
[June 17, 2025, 20:59:13 pm]

[Γραφική] Λυμένα θέματα
by okanpala
[June 17, 2025, 18:56:22 pm]

Τι ακούτε αυτήν τη στιγμή...
by Katarameno
[June 17, 2025, 14:25:00 pm]

Αντικατάστασης πυκνωτή σε...
by george14
[June 17, 2025, 13:58:20 pm]

Πότε θα βγει το μάθημα; -...
by tzortzis
[June 17, 2025, 13:19:53 pm]

Αποτελέσματα Εξεταστικής ...
by george14
[June 17, 2025, 12:08:25 pm]

[ΨEE] Γενικές απορίες και...
by Juror8
[June 17, 2025, 12:06:57 pm]

[Οργάνωση Υπολογιστών] Γε...
by RAFI
[June 16, 2025, 22:46:54 pm]

[Σ.Π.Η.Ε.] Γενικές απορίε...
by Nikos_313
[June 16, 2025, 19:49:00 pm]

[ΘΤΠΑ] Γενικές απορίες κα...
by Nikos_313
[June 16, 2025, 16:56:56 pm]

[Αρχές Οικονομίας] Να επι...
by _Trob
[June 16, 2025, 13:28:21 pm]

[Σ.Α.Π.Γ.] Εργασία 2025
by Nikos_313
[June 16, 2025, 12:13:45 pm]

[Διανεμημένη Παραγωγή] Γε...
by Διάλεξις
[June 16, 2025, 01:56:37 am]

[Σ.Π.Η.Ε.] Παλιά θέματα -...
by nmpampal
[June 15, 2025, 06:43:15 am]

Το thmmy.gr στο instagram...
by Mr Watson
[June 15, 2025, 00:50:23 am]

[Λογισμός ΙΙ] Απορίες σε...
by el mariachi
[June 14, 2025, 20:47:07 pm]
Στατιστικά
Members
Total Members: 9961
Latest: Poli
Stats
Total Posts: 1426704
Total Topics: 31710
Online Today: 215
Online Ever: 2093
(April 17, 2025, 08:47:49 am)
Users Online
Users: 18
Guests: 160
Total: 178
marwt
aplos paratiritis
kutsukellis
Nikos Spiliás
kchristoua
simos
mavropan
Yamal
abunchofcells
mitsos753905
Apaugasma
ANDVRONTZOS
andreassifo
tank
Akis Papanikolaou
Theosarm
CasualUndergrad
Εμφάνιση

Νέα για πρωτοετείς
Είσαι πρωτοετής;... Καλώς ήρθες! Μπορείς να βρεις πληροφορίες εδώ. Βοήθεια για τους καινούργιους μέσω χάρτη.
Κατεβάστε εδώ το Android Application για εύκολη πρόσβαση στο forum.
Ανεβάζετε τα θέματα των εξετάσεων στον τομέα Downloads με προσοχή στα ονόματα των αρχείων!

Νέα!
Συμβουλές καλής χρήσης του φόρουμ: Youtube embed code and links, Shoutbox, Notify, ...
Δείτε περισσότερα εδώ...
THMMY.gr > Forum > Μαθήματα Βασικού Κύκλου > 2ο Εξάμηνο > Αντικειμενοστραφής Προγραμματισμός (Moderators: chatzikys, tzortzis) > [C++] Άσκηση E - 2014/2015 - Προθεσμία 30/11/2014
0 Members and 1 Guest are viewing this topic.
Pages: 1 [2] 3 Go Down Print
Author Topic: [C++] Άσκηση E - 2014/2015 - Προθεσμία 30/11/2014  (Read 5010 times)
ablaoublas
Εθισμένος στο ΤΗΜΜΥ.gr
*****
Posts: 619


Are you feeling lucky ?


View Profile
Re: [C++] Άσκηση E - 2014/2015 - Προθεσμία 30/11/2014
« Reply #15 on: November 30, 2014, 17:01:15 pm »

Quote from: c0ndemn3d on November 30, 2014, 16:28:08 pm
Προφανώς! Γιατί το this αναφέρεται στο αντικείμενο το οποίο ορίζεται εκείνη τη στιγμή! Άρα αυτό που κάνεις είναι να βάλεις το ίδιο αντικείμενο 2 φορές σε 2 διαφορετικές θέσεις μνήμης. Η συνάρτηση αυτή εκτελείται μια φορά ανά αντικείμενο και το this προφανώς κάθε φορά κρατάει εκείνο το αντικείμενο.


Γενικά, εντάξει φαίνεται δύσκολο, αλλά εφόσον έχεις αρκετές απορίες, φρόντισε πρώτα να τελειώσεις την εργασία με τυφλοσούρτη και μετά να δεις τι κάνεις το κάθε κομμάτι της εργασίας (βάζει cout παντού για να δεις τι εκτελείται κάθε φορά).



Δεν κατάλαβα γιατί ακριβώς χρησιμοποιούμε τον this, P[0]= this και P[Np-1]=this  ??
Ο this εκείνη την στιγμή τι έχει ? Την διεύθυνση του αντικειμένου product ? Εμείς όμως θέλουμε να έχουμε στον πίνακα διευθύνσεις των παραγόμενων τάξεων σωστά ? Άρα γιατί το κάνουμε αυτό ?
Logged

https://www.youtube.com/watch?v=WEivBoS_bnI
c0ndemn3d
Veteran
Αbsolute ΤΗΜΜΥ.gr
******
Posts: 4804


Yarr!


View Profile
Re: [C++] Άσκηση E - 2014/2015 - Προθεσμία 30/11/2014
« Reply #16 on: November 30, 2014, 17:50:32 pm »

Θα εξηγήσω λίγο γενικά τη λειτουργία με το δικό μου project εκείνης της χρονιάς επειδή μπορεί να μπερδεύω λίγο κατά λάθος μου.

Code:
#include <iostream>
#include <cstdlib>
#define MACHINE_POWER 100

using namespace std;
/* Orismos abstract klasews.
   mpainoun statikes metavlites.
   sinithws exoume 4. 1 zeugos gia tin main
   kai ena gia ta dokimastika antikeimena */
  
class Device{
char *single_id;
protected:
static Device **Devices;
static int n;
static Device **ID;
static int m;
public:
Device();
Device(char *id);
char *getType(){return single_id;}
static Device ** getDevices(){return Devices;}
static long int getN(){return n;}
static short int getM(){return m;}
static Device ** getID(){return ID;}
virtual void create(int num) = 0;
virtual float getImax(float V) = 0;
virtual int getFuseType(float I) = 0;
virtual float getPmax() = 0;
virtual float getCable() = 0;
};

Device **Device::Devices;
Device **Device::ID;
int Device::n;
int Device::m;

Device::Device(){
n++;
if(n==1){
Devices = (Device **)malloc(sizeof(Device *));
}
else{
Devices = (Device **)realloc(Devices, n * sizeof(Device *));
}
Devices[n-1] = this;
}

Device::Device(char *id){
single_id = id;
m++;
if(m==1){
ID = (Device **)malloc(sizeof(Device *));
}else{
ID = (Device **)realloc(ID, m*sizeof(Device *));
}
ID[m-1] = this;
}

class Device1:public Device{
float Pmax, dist;
public:
Device1();
Device1(char *p):Device(p){}
void create(int num);
float getImax(float V);
float getPmax();
int getFuseType(float I);
float getCable(){return dist;}
}TEMPORARY_ITEM_1("Device 1");

Device1::Device1():Device(){
cout << "Give Pmax, dist\n";
cin >> Pmax >> dist;
}

void Device1::create(int num){
Device1 *p;
p = new Device1[num];
if(p == 0){
cout << "Could not allocate memory. Terminating program...\n";
exit(0);
}
}

float Device1::getImax(float V){
return Pmax/V;
}

float Device1::getPmax(){
return Pmax;
}

int Device1::getFuseType(float I){
if(I <= 10){
return 0;
}
else if(I <= 16){
return 1;
}
else if(I <= 20){
return 2;
}
else if(I <= 25){
return 3;
}
else{
return -1;
}
}

class Device2:public Device{
float Pmax, dist, c;
public:
Device2();
Device2(char *p):Device(p){}
void create(int num);
float getImax(float V);
float getPmax();
int getFuseType(float I);
float getCable(){return dist;}
}TEMPORARY_ITEM_2("Device 2");

Device2::Device2():Device(){
cout << "Give Pmax, dist, c\n";
cin >> Pmax >> dist >> c;
}

void Device2::create(int num){
Device2 *p;
p = new Device2[num];
if(p == 0){
cout << "Could not allocate memory. Terminating program..\n";
exit(0);
}
}

float Device2::getImax(float V){
return (Pmax + MACHINE_POWER*c)/V;
}

float Device2::getPmax(){
return Pmax;
}

int Device2::getFuseType(float I){
if(I <= 10){
return 0;
}
else if(I <= 16){
return 1;
}
else if(I <= 20){
return 2;
}
else if(I <= 25){
return 3;
}
else{
return -1;
}
}


float get_total_P(Device **devices, float voltage, int numberOfDevices, int *fuseNumber, float *fuseCable){
float totalPower = 0;
for(int i=0; i < numberOfDevices; i++){
int fuse = devices[i]->getFuseType(devices[i]->getImax(voltage));
switch(fuse){
case -1:
cout << "A device has current more that 25 A. It will be excluded.\n";
break;
default:
totalPower += devices[i]->getPmax();
fuseNumber[fuse]++;
fuseCable[fuse] += devices[i]->getCable();
}
}
return totalPower;
}

main(){
Device **types;
types = Device::getID();
int fuseNumber[] = {0, 0, 0, 0};
float voltage, fuseCable[] = {0, 0, 0, 0};
cout << "Give Voltage.\n";
cin >> voltage;
int numberOfTypes = Device::getM();
for(int i=0; i<numberOfTypes; i++){
cout << "Give number of Devices of category: " << types[i]->getType() << "\n";
int numberOfDevices;
cin >> numberOfDevices;
if(numberOfDevices == 0){
continue;
}else{
types[i]->create(numberOfDevices);
}
}
float Power = get_total_P(Device::getDevices(), voltage, Device::getN(), fuseNumber, fuseCable);
cout << "Total power required for eligible devices: " << Power << "\n";
for(int i=0; i<4; i++){
        cout << fuseNumber[i] << " " << fuseCable[i] << "\n";
    }
}

1) Oρίζω κατ' αρχάς την αρχική κλάση Device, από την οποία θα κληρονομείται κάθε άλλο αντικείμενο, ώστε να μπει στον αντίστοιχο πίνακα. Μην ξεχνάτε, ότι δεν θα βάζω στους πίνακες pointers τύπου Device, αλλά οποιουδήποτε άλλου τύπου κληρονομείται από την Device, δηλαδή Device1, Device2 και οποιουδήποτε άλλου τύπου θελήσω να προσθέσω.

2) Έχω δύο constructors σε κάθε κλάση. Δες ότι τους constructors της αρχικής κλάσης τους καλώ εμμέσως μέσω των constructors από τις θυγατρικές. Θα εξηγήσω παρακάτω.

3) Ο ένας constructor για κάθε θυγατρική παίρνει ως όρισμα ένα string και καλεί τον constructor της αρχικής επίσης με to string αυτό. Δες τώρα ότι εκείνος ο constructor (δηλαδή της αρχικής) τοποθετεί τα αντικείμενα αυτά στην ID, ενώ ο άλλος τα τοποθετεί στην Devices.

4) Δες τώρα, ότι ορίζω αντικείμενα με όρισμα string, μόνο κάτω από τον ορισμό κλάσης και αυτό που λέω είναι <<ξέρεις, υπάρχουν αντικείμενα και αυτού του τύπου, βάλε τα στην ID ώστε να ξέρει το πρόγραμμα μετά στη main ότι υπάρχουν αντικείμενα τέτοιου τύπου>>. Δεν μπορώ προφανώς να πω <<βάλε την κλάση μέσα>> οπότε το κάνω έμμεσα ορίζοντας ένα αντικείμενο εκείνης της κλάσης και κάθε φορά δίνω ένα όνομα για να ξέρουμε για ποιον τύπο αντικειμένων μιλάμε.

5) Άρα με τον ορισμό των κλάσεων βάζουμε και ένα αντικείμενο, το οποίο ως αντικείμενο είναι άχρηστο, δεν θα το χρησιμοποιήσουμε ποτέ, απλώς μας δείχνει ότι έχουμε αυτή την κλάση ορισμένη (γίνεται έτσι ώστε το πρόγραμμα να είναι ανεξάρτητο).

6) Έχω τελειώσει με τους ορισμούς των κλάσεων και τώρα μπαίνω στη main. Μέσω της ID έχω 2 αντικείμενα, αλλά μέσω του pointer Devices κανένα.

7) Στη main ορίζω έναν ακέραιο και καλώ την getM, η οποία επιστρέφει το m, το οποίο αν δείτε αυξανόταν όταν ορίζαμε αντικείμενα με string ως όρισμα. Κάνω επανάληψη τόσες φορές και κάθε φορά του λέω <<πες μου πόσα αντικείμενα θες της κατηγορίας types->getType()>>, η οποία μας επιστρέφει εκείνο το string που χρησιμοποιήσαμε κατά τον ορισμό των πρώτων αντικείμενων, ώστε να ξέρουμε για τί πράγμα μιλάμε. Μετά εκτελώ types->create(numberOfDevices). Καλεί δηλαδή, την create, αλλά εκείνη την create του τύπου που έχει ο pointer, γιατί ο πρώτος θα είναι pointer σε τύπου product1 και ο άλλο θα είναι σε product2 κ.ο.κ. άρα ο compiler θα εκτελέσει την κατάλληλη κάθε φορά. Η create αν δεις, κάνει κάθε φορά

p = new Device1[num] για τα αντικείμενα τύπου Device 1 και το αντίστοιχο για τα αντικείμενα τύπου Device2. Εφόσον καλούμε τη new, θα δεσμεύσει num-το-πλήθος αντικείμενα, καλώντας για το κάθε ένα το constructor με void όρισμα και θα τοποθετεί τα οριζόμενα αντικείμενα στην Devices.

« Last Edit: November 30, 2014, 17:53:42 pm by c0ndemn3d » Logged

In response, the pirates had to adhere to a doctrine of their own...
war against the world

They took my home, I can't walk away from that; can you?
 Forget me, forget Teach, forget loyalty, compacts, honours, debts, all of it.
The only question that matters is this: Who are you?
c0ndemn3d
Veteran
Αbsolute ΤΗΜΜΥ.gr
******
Posts: 4804


Yarr!


View Profile
Re: [C++] Άσκηση E - 2014/2015 - Προθεσμία 30/11/2014
« Reply #17 on: November 30, 2014, 17:53:14 pm »

Ο constuctor καλείται τόσες φορές, όσες και το όρισμα στη new. Κάθε φορά το this έχει τη διεύθυνση για εκείνο το αντικείμενο που ορίζεται, άρα είναι διαφορετικός κάθε φορά!

Προφανώς τα ορίσματα στη δική σας άσκηση μπορεί να διαφέρουν, εγώ απλώς λές τα γενικά του θέματος.
« Last Edit: November 30, 2014, 18:07:49 pm by c0ndemn3d » Logged

In response, the pirates had to adhere to a doctrine of their own...
war against the world

They took my home, I can't walk away from that; can you?
 Forget me, forget Teach, forget loyalty, compacts, honours, debts, all of it.
The only question that matters is this: Who are you?
Vlassis
Veteran
Μόνιμος κάτοικος ΤΗΜΜΥ.gr
******
Posts: 2162


εφακ


View Profile
Re: [C++] Άσκηση E - 2014/2015 - Προθεσμία 30/11/2014
« Reply #18 on: November 30, 2014, 19:28:51 pm »

Quote
class A
{...
};

int a;
product b;

product::product()
{...
}
Οι δηλωσεις π.χ. του a και του product που γινονται αναμεσα στη δηλωση της κλασης και τον ορισμο της συναρτησης, ουσιαστικα που ανηκουν? Για ποιο μερος του προγραμματος "ισχυουν"??
Logged

πρόπελ
Is any of it real? I mean, look at this. Look at it! A world built on fantasy! Synthetic emotions in the form of pills, psychological warfare in the form of advertising, mind-altering chemicals in the form of food, brainwashing seminars in the form of media, controlled isolated bubbles in the form of social networks. mr.robot s01e10
Napoleon
Θαμώνας
****
Gender: Male
Posts: 369



View Profile
Re: [C++] Άσκηση E - 2014/2015 - Προθεσμία 30/11/2014
« Reply #19 on: November 30, 2014, 19:35:47 pm »

οταν δηλώνεις μεταβλητές εκτός κλάσης-συνάρτησης-main είναι global μεταβλητές.Μπορούν να χρησιμοποιηθούν παντού στο πρόγραμμα(και πχ σε συναρτησεις χωρις να χρειάζεται να τις παρεις σαν ορισματα)
Logged
Vlassis
Veteran
Μόνιμος κάτοικος ΤΗΜΜΥ.gr
******
Posts: 2162


εφακ


View Profile
Re: [C++] Άσκηση E - 2014/2015 - Προθεσμία 30/11/2014
« Reply #20 on: November 30, 2014, 19:41:16 pm »

Quote from: Napoleon on November 30, 2014, 19:35:47 pm
οταν δηλώνεις μεταβλητές εκτός κλάσης-συνάρτησης-main είναι global μεταβλητές.Μπορούν να χρησιμοποιηθούν παντού στο πρόγραμμα(και πχ σε συναρτησεις χωρις να χρειάζεται να τις παρεις σαν ορισματα)
ωραια θενξ!  Wink
Logged

πρόπελ
Is any of it real? I mean, look at this. Look at it! A world built on fantasy! Synthetic emotions in the form of pills, psychological warfare in the form of advertising, mind-altering chemicals in the form of food, brainwashing seminars in the form of media, controlled isolated bubbles in the form of social networks. mr.robot s01e10
airpap
Ανερχόμενος/Ανερχόμενη
**
Posts: 79


View Profile
Re: [C++] Άσκηση E - 2014/2015 - Προθεσμία 30/11/2014
« Reply #21 on: November 30, 2014, 20:38:01 pm »

ρε παιδια, ποσα μεταλλα χρησιμοποιω για το product1 και για το product2?? ενα ειδος μεταλλου δε χρησιμοποιω για καθε τεμαχιο???
Logged
reservoir dog
Εθισμένος στο ΤΗΜΜΥ.gr
*****
Posts: 540



View Profile
Re: [C++] Άσκηση E - 2014/2015 - Προθεσμία 30/11/2014
« Reply #22 on: November 30, 2014, 21:31:05 pm »

Η συναρτηση production σε ποια κλαση ανηκει?
Logged
airpap
Ανερχόμενος/Ανερχόμενη
**
Posts: 79


View Profile
Re: [C++] Άσκηση E - 2014/2015 - Προθεσμία 30/11/2014
« Reply #23 on: November 30, 2014, 21:37:43 pm »

υπαρχει καποιος που μπορει να στειλει την ιδεα του γιατι καιγομαστε ολοι??  Embarrassed
Logged
Vlassis
Veteran
Μόνιμος κάτοικος ΤΗΜΜΥ.gr
******
Posts: 2162


εφακ


View Profile
Re: [C++] Άσκηση E - 2014/2015 - Προθεσμία 30/11/2014
« Reply #24 on: November 30, 2014, 21:39:26 pm »

Quote from: airpap on November 30, 2014, 20:38:01 pm
ρε παιδια, ποσα μεταλλα χρησιμοποιω για το product1 και για το product2?? ενα ειδος μεταλλου δε χρησιμοποιω για καθε τεμαχιο???
ναι ενα ειδος μεταλλου για καθε τεμαχιο, ειτε product1 ειτε product2, αν καταλαβα καλα. Το ποιο απ΄ολα θα χρησιμοποιησεις λογικα το διαβαζεις (?)   Huh
Quote from: reservoir dog on November 30, 2014, 21:31:05 pm
Η συναρτηση production σε ποια κλαση ανηκει?
Νομιζω πως σε καμια κλαση δε χρειαζεται να ανηκει, αφου χρησιμοποιεις κυριως pointers για προσβαση σε οποια στοιχεια θες  Wink
Logged

πρόπελ
Is any of it real? I mean, look at this. Look at it! A world built on fantasy! Synthetic emotions in the form of pills, psychological warfare in the form of advertising, mind-altering chemicals in the form of food, brainwashing seminars in the form of media, controlled isolated bubbles in the form of social networks. mr.robot s01e10
airpap
Ανερχόμενος/Ανερχόμενη
**
Posts: 79


View Profile
Re: [C++] Άσκηση E - 2014/2015 - Προθεσμία 30/11/2014
« Reply #25 on: November 30, 2014, 21:53:32 pm »

η συναρτηση production πως θα οριζεται...τι θα εχει για ορισματα??
Logged
reservoir dog
Εθισμένος στο ΤΗΜΜΥ.gr
*****
Posts: 540



View Profile
Re: [C++] Άσκηση E - 2014/2015 - Προθεσμία 30/11/2014
« Reply #26 on: November 30, 2014, 22:00:44 pm »

α ειχα την εντυπωση πως ειναι virtual συναρτηση αρα πρεπει να ανηκει σε κλαση. Οχι?
Logged
ablaoublas
Εθισμένος στο ΤΗΜΜΥ.gr
*****
Posts: 619


Are you feeling lucky ?


View Profile
Re: [C++] Άσκηση E - 2014/2015 - Προθεσμία 30/11/2014
« Reply #27 on: November 30, 2014, 22:09:43 pm »

Quote from: reservoir dog on November 30, 2014, 22:00:44 pm
α ειχα την εντυπωση πως ειναι virtual συναρτηση αρα πρεπει να ανηκει σε κλαση. Οχι?

Όχι, δεν ανήκει σε κλάση (απλή συνάρτηση είναι) και ως ορίσματα δίνεις :


  • product **P     πίνακας με pointers σε αντικείμενα product1 και product2
  • int N               το μέγεθος του πίνακα P 
  • material *m     πίνακας με αντικείμενα τύπου material 
  • int M              το μέγεθος του πίνακα m

Αν είπα κάτι λάθος διορθώστε με !
Logged

https://www.youtube.com/watch?v=WEivBoS_bnI
Baratheon
Καταξιωμένος/Καταξιωμένη
***
Gender: Male
Posts: 283



View Profile
Re: [C++] Άσκηση E - 2014/2015 - Προθεσμία 30/11/2014
« Reply #28 on: November 30, 2014, 22:24:43 pm »

συγνωμη για την χαζη ερωτηση αλλα ο constructor product::product() ποτε καλειται???
Logged
Napoleon
Θαμώνας
****
Gender: Male
Posts: 369



View Profile
Re: [C++] Άσκηση E - 2014/2015 - Προθεσμία 30/11/2014
« Reply #29 on: November 30, 2014, 22:44:52 pm »

Quote from: kstavrot on November 30, 2014, 22:24:43 pm
συγνωμη για την χαζη ερωτηση αλλα ο constructor product::product() ποτε καλειται???

κάθε φορά που δημιουργεις αντικείμενο δικό της ή παραγόμενης κλάσης(πχ product1)
Logged
Pages: 1 [2] 3 Go Up Print
Jump to:  

Powered by SMF | SMF © 2006-2009, Simple Machines LLC
Scribbles2 | TinyPortal © Bloc | XHTML | CSS
Loading...