Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
Prog2
/
eloadas_peldak
/
ea_10
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
52b0366a
authored
May 02, 2019
by
Szeberényi Imre
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
v1
parent
1c066383
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
202 additions
and
3 deletions
+202
-3
ctor_dtor2/ctor_dtor2.cbp
+1
-0
ctor_dtor2/ctor_dtor2.cpp
+12
-3
kodreszletek/kodreszletek.cbp
+43
-0
kodreszletek/kodreszletek.cpp
+146
-0
No files found.
ctor_dtor2/ctor_dtor2.cbp
View file @
52b0366a
...
@@ -30,6 +30,7 @@
...
@@ -30,6 +30,7 @@
</Build>
</Build>
<Compiler>
<Compiler>
<Add
option=
"-pedantic"
/>
<Add
option=
"-pedantic"
/>
<Add
option=
"-std=c++11"
/>
<Add
option=
"-Wall"
/>
<Add
option=
"-Wall"
/>
<Add
option=
"-Werror"
/>
<Add
option=
"-Werror"
/>
</Compiler>
</Compiler>
...
...
ctor_dtor2/ctor_dtor2.cpp
View file @
52b0366a
/**
/**
* \file ctor_dtor2.cpp
*
* Egyszerű osztályhierarchia az ctor/dtor hívási sorrendjének bemutatására.
* Egyszerű osztályhierarchia az ctor/dtor hívási sorrendjének bemutatására.
* Az azonos feladatok végrehajtási sorrendje (pl. adattagok konstruktorhívása,
* Az azonos feladatok végrehajtási sorrendje (pl. adattagok konstruktorhívása,
* vagy ősosztályok konstruktorának hívási sorrendje) a deklaráció sorrendjétől
* vagy ősosztályok konstruktorának hívási sorrendje) a deklaráció sorrendjétől
* függ.
* függ.
*/
*/
#include <iostream>
#include <iostream>
/// Korábban használt makró, ami kiírja a paramétereit, majd változtatás nélkül kigenerálja azokat.
/// A kiírást egy tabulátorral kezdi és soremeléssel zárja.
/// Használatával elérhető, hogy a paraméterként adott utasítások, deklarációk a végrehajtás előtt
/// kiíródjanak a képernyőre. Így hatásuk jól megfigyelhető.
#define _(...) std::cout << "\t" << #__VA_ARGS__ << std::endl; __VA_ARGS__
using
std
::
cout
;
using
std
::
cout
;
using
std
::
cerr
;
using
std
::
cerr
;
...
@@ -99,9 +107,10 @@ struct A : NemVirtAlap1, NemVirtAlap2 {
...
@@ -99,9 +107,10 @@ struct A : NemVirtAlap1, NemVirtAlap2 {
};
};
int
main
()
{
int
main
()
{
A
*
p
=
new
A
;
_
(
A
*
p
=
new
A
;
)
cout
<<
"Tovabb: ENTER"
<<
endl
;
cin
.
ignore
(
100
,
'\n'
);
cin
.
ignore
(
100
,
'\n'
);
delete
p
;
_
(
delete
p
;
)
return
0
;
return
0
;
}
}
kodreszletek/kodreszletek.cbp
0 → 100644
View file @
52b0366a
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<CodeBlocks_project_file>
<FileVersion
major=
"1"
minor=
"6"
/>
<Project>
<Option
title=
"kodreszletek"
/>
<Option
pch_mode=
"2"
/>
<Option
compiler=
"gcc"
/>
<Build>
<Target
title=
"Debug"
>
<Option
output=
"bin/Debug/kodreszletek"
prefix_auto=
"1"
extension_auto=
"1"
/>
<Option
object_output=
"obj/Debug/"
/>
<Option
type=
"1"
/>
<Option
compiler=
"gcc"
/>
<Compiler>
<Add
option=
"-g"
/>
</Compiler>
</Target>
<Target
title=
"Release"
>
<Option
output=
"bin/Release/kodreszletek"
prefix_auto=
"1"
extension_auto=
"1"
/>
<Option
object_output=
"obj/Release/"
/>
<Option
type=
"1"
/>
<Option
compiler=
"gcc"
/>
<Compiler>
<Add
option=
"-O2"
/>
</Compiler>
<Linker>
<Add
option=
"-s"
/>
</Linker>
</Target>
</Build>
<Compiler>
<Add
option=
"-std=c++11"
/>
<Add
option=
"-Wall"
/>
</Compiler>
<Unit
filename=
"kodreszletek.cpp"
/>
<Extensions>
<code_completion
/>
<envvars
/>
<debugger
/>
<lib_finder
disable_auto=
"1"
/>
</Extensions>
</Project>
</CodeBlocks_project_file>
kodreszletek/kodreszletek.cpp
0 → 100644
View file @
52b0366a
/**
* \file: kodreszletek.cpp
*
* Előadás diáin szereplő egyéb kódrészletek a tárolók és algoritmusok bemutatásához
*/
#include <iostream>
#include <iomanip>
#include <stdexcept>
#include <vector>
#include <list>
#include <deque>
#include <map>
#include <set>
/// Makró a kííráshoz:
/// Korábban használt makróhoz hasonló makró, ami kiírja a paramétereit, majd változtatás nélkül kigenerálja azokat.
/// A kiírást a soremeléssel kezdi és komment jellel zárja.
/// Használatával elérhető, hogy a paraméterként adott utasítások, deklarációk a végrehajtás előtt
/// kiíródjanak a képernyőre. Így hatásuk jól megfigyelhető.
#define _(...) std::cout << std::endl << std::setw(50) << std::left << #__VA_ARGS__ << "// "; __VA_ARGS__
using
std
::
cout
;
using
std
::
cerr
;
using
std
::
cin
;
using
std
::
endl
;
struct
Base
{
int
a
;
Base
(
int
i
)
:
a
(
0
)
{};
int
f
()
{
return
a
;}
};
// Der az inicializáló listán hívja Base függvényét,
// amely a Base adattagját adja vissza, de ez még nem inicailizálódott!!!!
struct
Der
:
Base
{
int
b
;
Der
()
:
Base
(
b
=
f
())
{
cout
<<
b
<<
endl
;;
}
};
int
hibas_osztaly
()
{
cout
<<
"Mit ir ki? "
;
cout
<<
"Nem tudjuk!"
<<
endl
;
Der
d
;
/// mit ír ki ?
return
0
;
}
template
<
typename
C
>
// Segédsablon a példákhoz
void
print
(
C
&
co
,
const
char
*
sep
=
","
)
{
for
(
typename
C
::
iterator
it
=
co
.
begin
();
it
!=
co
.
end
();
++
it
)
std
::
cout
<<
*
it
<<
sep
;
}
template
<
typename
C
>
// Segédsablon a példákhoz
void
reverse_print
(
C
&
co
,
const
char
*
sep
=
","
)
{
for
(
typename
C
::
reverse_iterator
it
=
co
.
rbegin
();
it
!=
co
.
rend
();
++
it
)
std
::
cout
<<
*
it
<<
sep
;
}
int
tarolok
()
{
_
(
std
::
list
<
int
>
ilist1
,
ilist2
(
100
);
)
_
(
ilist1
.
assign
(
5
,
3
);
)
_
(
ilist2
.
assign
(
ilist1
.
begin
(),
ilist1
.
end
());
)
_
(
cout
<<
ilist2
.
size
();
)
// 5
_
(
print
(
ilist2
,
", "
);
)
// 3, 3, 3, 3, 3,
_
(
std
::
vector
<
int
>
ivec
(
ilist2
.
begin
(),
ilist2
.
end
());)
_
(
ivec
[
0
]
=
6
;)
_
(
cout
<<
ivec
.
front
();
)
// 6)
_
(
cout
<<
ivec
.
back
();
)
// 3)
_
(
char
duma
[]
=
"HELLO"
;)
_
(
std
::
vector
<
char
>
cv
(
duma
,
duma
+
5
);)
_
(
reverse_print
(
cv
,
""
);)
// OLLEH
_
(
cv
.
insert
(
cv
.
end
(),
' '
);)
_
(
cv
.
insert
(
cv
.
end
(),
duma
,
duma
+
5
);)
_
(
print
(
cv
,
""
);)
// HELLO HELLO
_
(
cv
.
insert
(
cv
.
begin
(),
3
,
'*'
)
;)
_
(
print
(
cv
,
""
);)
// ***HELLO HELLO
_
(
std
::
deque
<
int
>
iq1
,
iq2
;)
_
(
iq1
.
push_back
(
3
);
iq1
.
push_back
(
4
);)
_
(
iq1
.
push_back
(
8
);
iq1
.
push_back
(
10
);)
_
(
iq1
.
push_back
(
2
);
iq1
.
push_back
(
7
);)
_
(
cout
<<
iq1
.
front
();
)
// 3)
_
(
print
(
iq1
);
)
// 3,4,8,10,2,7,)
_
(
iq1
.
pop_back
();)
_
(
print
(
iq1
);
)
// 3,4,8,10,2,)
_
(
iq1
.
erase
(
iq1
.
begin
()
+
1
);)
_
(
print
(
iq1
);
)
// 3,8,10,2,)
_
(
iq1
.
erase
(
iq1
.
begin
()
+
1
,
iq1
.
end
());)
_
(
print
(
iq1
);
)
// 3,)
_
(
std
::
set
<
int
>
set1
,
set2
;)
_
(
set1
.
insert
(
4
);)
_
(
set1
.
insert
(
3
);)
_
(
cout
<<
set1
.
count
(
3
);)
_
(
set1
.
insert
(
3
);)
_
(
set1
.
insert
(
10
);)
_
(
print
(
set1
);
)
// 3,4,10)
_
(
if
(
set1
.
find
(
4
)
!=
set1
.
end
()))
_
(
cout
<<
"megvan"
;
)
// megvan)
_
(
std
::
set
<
int
>::
iterator
it
;)
_
(
it
=
set1
.
lower_bound
(
4
);
)
// 4)
_
(
cout
<<
*
it
;)
_
(
it
=
set1
.
upper_bound
(
4
);
)
// 10)
_
(
cout
<<
*
it
;)
_
(
typedef
std
::
set
<
int
>::
iterator
myiter
;)
_
(
std
::
pair
<
myiter
,
myiter
>
rit
;)
_
(
rit
=
set1
.
equal_range
(
4
);)
_
(
cout
<<
*
rit
.
first
<<
":"
<<
*
rit
.
second
;)
// 4:10
_
(
std
::
list
<
int
>
il
(
2
,
-
3
);
)
_
(
il
.
push_front
(
9
);
)
_
(
il
.
push_back
(
2
);
)
_
(
il
.
sort
();
)
_
(
print
(
il
);
)
// -3, -3, 2, 9,
_
(
il
.
unique
();
)
_
(
std
::
list
<
int
>
il2
(
3
,
4
);
)
_
(
il
.
merge
(
il2
);
)
_
(
print
(
il
);
)
// -3, 2, 4, 4, 4, 9,
_
(
std
::
deque
<
int
>
dq
;
)
_
(
dq
.
push_back
(
6
);
)
_
(
dq
.
push_front
(
9
);
)
_
(
print
(
dq
);
)
// 9, 6,
_
(
dq
.
resize
(
6
,
-
3
);
)
_
(
print
(
dq
);
)
//9, 6, -3, -3, -3,-3,
_
(
dq
.
back
()
=
1
;
)
_
(
print
(
dq
);
)
// 9, 6, -3, -3, -3, 1,
_
(
dq
[
2
]
=
2
;
)
_
(
print
(
dq
);
)
// 9, 6, 2, -3, -3, 1,
_
(
dq
.
at
(
3
)
=
0
;
)
_
(
if
(
!
dq
.
empty
())
print
(
dq
);)
// 9, 6, 2, 0, -3, 1,
_
(
return
0
;)
}
int
main
()
{
_
(
hibas_osztaly
();
)
tarolok
();
}
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