Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
Prog2
/
labor_peldak
/
lab_07.5
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Members
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit
84ddd1cd
authored
Mar 29, 2021
by
Szeberényi Imre
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fixArray
parent
fd995c31
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
21 additions
and
18 deletions
+21
-18
Alakzatlab3/alakzat3_main.cpp
+10
-10
Alakzatlab3/gen_array2.hpp
+11
-8
No files found.
Alakzatlab3/alakzat3_main.cpp
View file @
84ddd1cd
...
...
@@ -12,10 +12,9 @@
* >= 6 - Szakasz klónozható
* >= 7 - Rajztabla is másolható, de csak szakaszt teszünk bele.
* >= 8 - Szorgalmi: Rajztabla is másolható. Poligon is klónozható.
*
>= 9 - Rajztabla fixArray sablont használ
*
== 9 - Rajztabla generikus tömböt használ.
*/
#define ELKESZULT 1
#define ELKESZULT 0
#include <iostream>
#include <fstream>
#include "gtest_lite.h"
...
...
@@ -122,7 +121,7 @@ int main(int argc, char** argv) {
}
ENDM
#endif
#if ELKESZULT
=
= 5
#if ELKESZULT
>
= 5
TEST
(
Rajztabla
,
Poligonal
)
{
Rajztabla
tabla
;
tabla
.
felrak
(
new
Szakasz
(
Pont
(
20
,
40
),
100
,
0
,
WHITE
));
...
...
@@ -135,7 +134,7 @@ int main(int argc, char** argv) {
}
ENDM
#endif // ELKESZULT
#if ELKESZULT
=
= 6
#if ELKESZULT
>
= 6
TEST
(
Szakasz
,
clone
)
{
Szakasz
*
psz1
=
new
Szakasz
(
Pont
(
20
,
40
),
100
,
0
,
WHITE
);
cout
<<
*
psz1
<<
endl
;
...
...
@@ -172,7 +171,7 @@ int main(int argc, char** argv) {
}
ENDM
#endif // ELKESZULT
#if ELKESZULT
=
= 8
#if ELKESZULT
>
= 8
TEST
(
Rajztabla
,
assign
.
full
)
{
Rajztabla
tabla
;
tabla
.
felrak
(
new
Szakasz
(
Pont
(
20
,
40
),
100
,
0
,
WHITE
));
...
...
@@ -198,14 +197,15 @@ int main(int argc, char** argv) {
}
ENDM
#endif // ELKESZULT
/// Itt a vége
if
(
ELKESZULT
<
5
&&
!
gtest_lite
::
test
.
fail
())
ADD_FAILURE
()
<<
"
\n
Legalabb ELEKSZULT == 5-ig oldja meg a feladatokat!
\n
"
;
ADD_FAILURE
()
<<
"
\n
Legalabb ELEKSZULT == 5-ig oldja meg a feladatokat!
\n
"
;
if
(
ELKESZULT
>=
10
&&
!
gtest_lite
::
test
.
fail
())
std
::
cout
<<
"
\n
Szuper! Mind kesz"
<<
std
::
endl
;
if
(
ELKESZULT
>=
9
&&
!
gtest_lite
::
test
.
fail
())
std
::
cout
<<
"
\n
Szuper! Mind kesz"
<<
std
::
endl
;
else
std
::
cout
<<
"
\n
EKESZULT = "
<<
ELKESZULT
<<
std
::
endl
;
std
::
cout
<<
"
\n
EKESZULT = "
<<
ELKESZULT
<<
std
::
endl
;
GTEND
(
std
::
cerr
);
// Csak C(J)PORTA működéséhez kell
...
...
Alakzatlab3/gen_array2.hpp
View file @
84ddd1cd
#ifndef GEN_ARRAY2_HPP
#
ifndef
GEN_ARRAY2_HPP
#define GEN_ARRAY2_HPP
/**
* \file gen_array2.hpp
...
...
@@ -14,17 +14,20 @@
/// Generikus tömb sablon
/// @param T - adattípus
/// @param s - méret
template
<
class
T
,
unsigned
int
s
>
// sablon kezdõdik
class
Array
{
// osztálysablon
T
t
[
s
];
// elemek tömbje. s teplate parameter
template
<
class
T
,
unsigned
int
s
>
// sablon kezdodik
class
fixArray
{
// osztálysablon
T
t
[
s
];
// elemek tömbje. s template parameter
void
chk
(
size_t
i
)
const
{
if
(
i
>=
s
)
throw
"Indexelesi hiba"
;
}
public
:
/// Indexelés.
/// @param i - index
/// @return - referencia az adott indexű elemre
/// @return - hiba esetén kivételt dob
T
&
operator
[](
unsigned
int
i
)
{
if
(
i
>=
s
)
throw
"Indexelesi hiba"
;
return
t
[
i
];
chk
(
i
)
;
return
t
[
i
];
}
/// Indexelés konstans függvénye.
...
...
@@ -32,8 +35,8 @@ public:
/// @return - referencia az adott indexű elemre
/// @return - hiba esetén kivételt dob
const
T
&
operator
[](
unsigned
int
i
)
const
{
if
(
i
>=
s
)
throw
"Indexelesi hiba (const)"
;
return
t
[
i
];
chk
(
i
)
;
return
t
[
i
];
}
};
#endif
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment