Search found 295 matches

by Viorel
12 Oct 2018, 07:52
Forum: Limbajul C++
Topic: Adunare matrice
Replies: 2
Views: 143

Re: Adunare matrice

Încearcă o altă funcție: void MatrixAdd( int myarray1[n][n], int myarray2[n][n], int myarray3[n][n] ) { for( int i = 0; i < n; i++ ) { for( int j = 0; j < n; j++ ) { myarray3[i][j] = myarray1[i][j] + myarray2[i][j]; } } } Apelare: MatrixAdd( myarray1, myarray2, m3 ); Pentru afișare, folosește ciclur...
by Viorel
06 May 2018, 20:47
Forum: Limbajul C++
Topic: returnare tablou din functie
Replies: 2
Views: 883

Re: returnare tablou din functie

Se observă o neconcordanță între „[COL][ROW]” și „[ROW][COL]”.
by Viorel
28 Feb 2018, 20:59
Forum: Limbajul C++
Topic: std::string
Replies: 2
Views: 1094

Re: std::string

Un obiect MyClass nu poate fi construit în baza unui șir de caractere simplu. Eroarea de compilare poate fi rezolvată prin adăugarea unui alt fel de constructor: MyClass( const char * Name ) { this->Name = new string(Name); } O altă soluție: #include <iostream> #include <string> using namespace std;...
by Viorel
11 Feb 2018, 20:59
Forum: Limbajul C++
Topic: Obiect creat dinamic
Replies: 3
Views: 1266

Re: Obiect creat dinamic

Încearcă această funcție în DerivedClass:

Code: Select all

void printValue()
{
   BaseClass::printValue();
   cout << "\n z = " << z << endl;
}
by Viorel
10 Feb 2018, 20:34
Forum: Limbajul C++
Topic: Obiect creat dinamic
Replies: 3
Views: 1266

Re: Obiect creat dinamic

Încearcă o conversie explicită: DerivedClass * d = (DerivedClass*)box; d->printValue( *d ); Funcția printValue ar putea fi declarată virtuală în clasa de bază, iar parametrul arr ar putea fi eliminat deoarece există this . Funcția din BaseClass va tipări x și y , iar funcția din DerivedClass poate a...
by Viorel
28 Nov 2017, 19:05
Forum: Limbajul C++
Topic: Constructor privat in fisier header
Replies: 2
Views: 1379

Re: Constructor privat in fisier header

Încearcă o modificare:

Code: Select all

TestClass * TestClass::getTestClass()
{
	return new TestClass();
}
Dacă mai sînt erori, oferă detalii.
by Viorel
21 Nov 2017, 17:57
Forum: Limbajul C++
Topic: tablou de functii
Replies: 2
Views: 1246

Re: tablou de functii

Nu cred că există tablouri de funcții, dar e posibilă declararea unui tablou de pointeri spre funcții: ‘void (*tab[4])( )’ . Dar acest tip de tablou nu va accepta funcții membru. Se vor utiliza ori funcții ne-membru, or funcții statice, de exemplu ‘static void func1()’ . Pentru a simplifica definiți...
by Viorel
16 Sep 2017, 18:00
Forum: Limbajul C++
Topic: Intrebare !
Replies: 4
Views: 1500

Re: Intrebare !

În cazul variabilelor obișnuite de 32 de biți, încearcă această soluție:

Code: Select all

int variabila1 = 10;
int variabila2 = 20;

int valori[] = { variabila1, variabila2 };

int minimul = valori[unsigned( variabila2 - variabila1 ) >> 31];
int maximul = valori[unsigned( variabila1 - variabila2 ) >> 31];
by Viorel
08 Sep 2017, 20:50
Forum: Limbajul C++
Topic: Lista inlantuita
Replies: 2
Views: 1576

Re: Lista inlantuita

Încearcă o altă funcție:

Code: Select all

void AddNODE( NODE *newNode )
{
	newNode->SetNext( head );
	head = newNode;
}
Și ar trebui să foloseși clasa special proiectată std::string.
by Viorel
21 Aug 2017, 21:00
Forum: Limbajul C++
Topic: mysql.h
Replies: 2
Views: 1323

Re: mysql.h

Cred că fișierul face parte din „Connector/C”: https://dev.mysql.com/downloads/connector/c/. Acolo este și o arhivă care poate fi dezarhivată manual.

Există și o variantă pentru C++, numită „Connector/CPP”.
by Viorel
30 Jul 2017, 09:59
Forum: Limbajul C++
Topic: Compunerea obiectelor
Replies: 2
Views: 1266

Re: Compunerea obiectelor

Cred că getBox1 returnează o copie a membrului box1. Operația setX se aplică asupra copiei.

Pentru a returna o referință spre obiectul original, adaugă ‘&’:

Code: Select all

FirstClass & getBox1()
{
   return box1;
}
by Viorel
04 Jun 2017, 11:56
Forum: Limbajul C++
Topic: Dereferentiere pointeri
Replies: 1
Views: 1405

Re: Dereferentiere pointeri

Cred că dereferențierea unui tablou ’int t[2][3]’ într-o expresie ‘t [j]’ este ‘t+i*3+j’ . // tabloul 'p' privit ca un șir de pointeri spre 'int': int ** z = (int**)p; // pointer spre începutul rîndului 'i': int ** ri = z + i * 3; // pointer spre elementul 'j' din rîndul 'i' int ** eij = ri + j; // ...
by Viorel
14 May 2017, 10:40
Forum: Limbajul C++
Topic: supraincarcare operatori stream
Replies: 1
Views: 1503

Re: supraincarcare operatori stream

Adaugă const:

Code: Select all

template <class X, class Y, class Z> 
ostream & operator << ( ostream & out, const Persoana<X,Y,Z> & obj )
{
   . . .
}
by Viorel
01 May 2017, 19:29
Forum: Limbajul C++
Topic: Clase Template
Replies: 2
Views: 1491

Re: Clase Template

Mai adaugă un 't': FirstClass.
by Viorel
24 Apr 2017, 21:20
Forum: Limbajul C++
Topic: STL
Replies: 2
Views: 1705

Re: STL

Încearcă următoarea modificare:

Code: Select all

template <class T>
char * Valoare<T>::getString()
{
    return ptr;
}