Results 1 to 9 of 9
Thread: operator+() ++
Hybrid View
-
13th September 2009 12:12 #1
operator+() ++
, , . drob . , . double. .
, return operator+(), ret . , , . "" - , .Code:class vektor { drob *element; long razmer; drob _dljina // ... void initNULL() { id = random(1000); razmer = -1; _dljina = 0; } void init(int broy_elementi) { element = new drob [broy_elementi]; razmer = broy_elementi; } void osvobodiPamet() { printf("destructor-%d", id); if (razmer > 0) delete [] element; initNULL(); } public: vektor(){initNULL();} vektor(int broy_elementi) { initNULL(); init(broy_elementi); } ~vektor() {osvobodiPamet();} // vektor& operator=(const vektor &a) { id = random(1000); if (this != &a) { osvobodiPamet(); init(a.razmer); for(i=0; i<razmer; i++) element[i] = a.element[i]; } return *this; } vektor& operator+=(const vektor &a) { if (a.razmer != razmer) greszni_razmeri(); else for(i=0; i<razmer; i++) element[i] += a.element[i]; return *this; } vektor& operator+(const vektor &a, const vektor &b); }; vektor& operator+(const vektor &a, const vektor &b) { vektor ret; ret = a; return ret += b; }
, , . - ? int - , ... , .Last edited by 4eRNoBiL; 13th September 2009 at 12:15. Reason:
Fujistu Lifebook E756 | Core i7-6500U / 400MHz-3.1GHz | 8 GB DDR4-2133 | Samsung PM871 / 256 GB SSD | 15" 1920x1080 | Manjaro Linux + kernel 4.19
-
13th September 2009 12:15 #2
- return type- operator+ vektor, vektor&.
, friend , .. return type, - operator+ private . , operator+ friend .
.. - ( operator+) vektor, vektor&.Last edited by anrieff; 13th September 2009 at 12:47.
, . .
"640K ught to be enough for anybody" - Bill Gates, 1981
::Machine specs::Fract::AGG::::Baileys::blog::YouTube channel
-
13th September 2009 13:03 #3
, . operator+ , main() - , . , .
...Code:class ... { //... vektor operator+(const vektor &a) { vektor ret; ret = *this; return ret += a; } };Fujistu Lifebook E756 | Core i7-6500U / 400MHz-3.1GHz | 8 GB DDR4-2133 | Samsung PM871 / 256 GB SSD | 15" 1920x1080 | Manjaro Linux + kernel 4.19
-
13th September 2009 13:13 #4
. temporary ret ( RVO ). , copy-, drob *element. temp , ret , *element., !
-
13th September 2009 13:59 #5
!
, ., anrieff , ++ .Code:vektor(vektor &a) { initNULL(); init(a.razmer); for (i=0; i<razmer; i++) element[i] = a.element[i]; }
, .
, ! !
Last edited by 4eRNoBiL; 13th September 2009 at 14:04. Reason:
Fujistu Lifebook E756 | Core i7-6500U / 400MHz-3.1GHz | 8 GB DDR4-2133 | Samsung PM871 / 256 GB SSD | 15" 1920x1080 | Manjaro Linux + kernel 4.19
-
13th September 2009 17:20 #6Registered User
Join Date: Dec:2007
Location: Sofia
Posts: 366
.
C++ ( 'Effective C++') , , .
vektor, C++ STL.
( - " ") . ( Boost), .
-
13th September 2009 20:30 #7
- , ( 4eRNoBiL) " " (, , copy operator = ), , copy - operator = private .
, ., . .
"640K ught to be enough for anybody" - Bill Gates, 1981
::Machine specs::Fract::AGG::::Baileys::blog::YouTube channel
-
13th September 2009 21:11 #8
( -
) "" . drob* std::vector<drob>. Smart - - boost, C++1x.
, !




Reply With Quote

Lenovo ThinkPad 15 IdeaPad 15
5th May 2023, 22:16 in