C++ Questions

Marios marios_hellas_23 at yahoo.gr
Tue Nov 25 21:29:07 EET 2003


Χαιρετώ την λίστα,
Αν και δεν είναι ο κατάλληλος τόπος για να ρωτήσω εδώ, θα ήθελα αν μπορεί
κάποιος να μου πει το εξής "πρόβλημα" που έχω
1)Έχω κάνει dynamic allocation ένα 3D πίνακα με τον εξής τρόπο

int size1,size2,size3;
float ***array3;
try
{
	array3=new float **[size1];
}
catch (std::bad_alloc exception)
{
	std::cout<<"Error Allocating array3 In Dimension 1"<<".Error message
is :"<<exception.what();
	std::exit(1);
}
  try
	{
		for (i=0;i<size1;i++)
                        {
                        array3[i]=new float *[size2];
								try 
									{ 
	
for (j=0;j<size2;j++)
	
{
	
array3[i][j]=new float [size3];
	
}
									 }
								catch
(std::bad_alloc exception)
									{
	
std::cout<<"Problem In array3 Dimension 3"<<".Error message is
:"<<exception.what();
 
std::exit (1);
									}

						}
	}

catch (std::bad_alloc exception)
	{
		std::cout<<"Problem In array3 Dimension 2"<<".Error message
is :"<<exception.what();
                std::exit (1);
	}						
	
			
						
Θέλω αυτόν τον πίνακα να τον περάσω σε ένα function αλλά ως const, δηλαδή να
μην μπορεί να αλλάξει μέσα στο function. Όμως όταν κάνω αυτό

func(const float ***array3);
Ο compiler λέει ότι δεν μπορεί να μετατρέψει ένα ***float σε const float*
Πώς γίνεται?
2)Πώς μπορώ από default να ρυθμίσω τον compiler να έχει ακρίβεια σε float
μέχρι 6 δεκαδικά, διότι μετά τα 7 δεκαδικά ξέρω ότι κάθε compiler δεν έχει
ακρίβεια και γυρνάει rundom time errors?
Ευχαριστώ







More information about the Linux-greek-users mailing list