Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
Prog2
/
ell_feladat
/
Nem_OO
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
A prog2-höz tartozó friss repo anyagok itt elérhetőek:
https://git.iit.bme.hu/
Commit
1f73ca85
authored
Feb 24, 2019
by
Szeberényi Imre
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
MEMTRACE
parent
e11a4f92
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
22 additions
and
11 deletions
+22
-11
memtrace.h
+14
-11
nem_oo_teszt.cpp
+8
-0
No files found.
memtrace.h
View file @
1f73ca85
...
...
@@ -3,7 +3,7 @@ Memoriaszivargas-detektor
Keszitette: Peregi Tamas, BME IIT, 2011
petamas@iit.bme.hu
Kanari: Szeberenyi Imre, 2013.,
VS 2012: Szebernyi Imre, 2015.,
VS 2012: Szeber
é
nyi Imre, 2015.,
mem_dump: 2016.
inclue-ok: 2017., 2018.
*********************************/
...
...
@@ -13,7 +13,7 @@ inclue-ok: 2017., 2018.
#if defined(MEMTRACE)
/*ha defini
lva van, akkor a hibakat ebbe a fajlba rja, egy
bkent stderr-re*/
/*ha defini
álva van, akkor a hibakat ebbe a fajlba írja, egyé
bkent stderr-re*/
/*#define MEMTRACE_ERRFILE MEMTRACE.ERR*/
/*ha definialva van, akkor futas kozben lancolt listat epit. Javasolt a hasznalata*/
...
...
@@ -71,25 +71,25 @@ inclue-ok: 2017., 2018.
#define TRACEC(func) func
#endif
// THROW deklar
ci v
ltozatai
// THROW deklar
áció vá
ltozatai
#if defined(_MSC_VER)
// VS rosszul kezeli az __cplusplus makrot
#if _MSC_VER < 1900
// * nem biztos, hogy j
gy *
// * nem biztos, hogy j
ó í
gy *
#define THROW_BADALLOC
#define THROW_NOTHING
#else
// C++11 vagy jabb
// C++11 vagy
ú
jabb
#define THROW_BADALLOC noexcept(false)
#define THROW_NOTHING noexcept
#endif
#else
#if __cplusplus < 201103L
// C++2003 vagy rgebbi
// C++2003 vagy r
é
gebbi
#define THROW_BADALLOC throw (std::bad_alloc)
#define THROW_NOTHING throw ()
#else
// C++11 vagy jabb
// C++11 vagy
ú
jabb
#define THROW_BADALLOC noexcept(false)
#define THROW_NOTHING noexcept
#endif
...
...
@@ -144,9 +144,9 @@ END_NAMESPACE
#include <stdlib.h>
#ifdef __cplusplus
#include <iostream>
/* ide gy
jtjk a nemtrace-vel sszeakad headereket, hogy el
bb legyenek */
/* ide gy
ûjtjük a nemtrace-vel összeakadó headereket, hogy elõ
bb legyenek */
#include <fstream> // VS 2013 headerj
ben van deleted definici
#include <fstream> // VS 2013 headerj
ében van deleted definició
#include <sstream>
#include <vector>
#include <algorithm>
...
...
@@ -197,7 +197,7 @@ void * operator new[](size_t size) THROW_BADALLOC;
void
operator
delete
(
void
*
p
)
THROW_NOTHING
;
void
operator
delete
[](
void
*
p
)
THROW_NOTHING
;
/* Visual C++ 2012 miatt kell, mert h
klis, hogy nincs megfelel delete, br senki sem haszn
lja */
/* Visual C++ 2012 miatt kell, mert h
áklis, hogy nincs megfelelõ delete, bár senki sem haszná
lja */
void
operator
delete
(
void
*
p
,
int
,
const
char
*
)
THROW_NOTHING
;
void
operator
delete
[](
void
*
p
,
int
,
const
char
*
)
THROW_NOTHING
;
...
...
@@ -212,5 +212,8 @@ void operator delete[](void *p, int, const char *) THROW_NOTHING;
#endif
/*MEMTRACE_CPP*/
#endif
/*FROM_MEMTRACE_CPP*/
#endif
/*MEMCHECK*/
#else
#pragma message ( "MEMTRACE NOT DEFINED" )
#endif
/*MEMTRACE*/
#endif
/*MEMTRACE_H*/
nem_oo_teszt.cpp
View file @
1f73ca85
...
...
@@ -104,14 +104,22 @@ int main() {
/// kipróbáljuk a unique-ot
char
test
[]
=
"ssszia C+++++ + !"
;
/// sok ismétlődő kar.
#ifndef CPORTA
#ifdef MEMTRACE
cout
<<
"
\n
test tomb tartalma a uniq hivasa elott
\n
"
;
memtrace
::
mem_dump
(
&
test
,
sizeof
(
test
));
#else
cout
<<
"
\n
Nincs definialva a MEMTRACE"
#endif // MEMTRACE
#endif // CPORTA
cout
<<
test
<<
endl
;
char
*
p
=
sajat
::
unique
(
test
,
test
+
strlen
(
test
));
#ifndef CPORTA
#ifdef MEMTRACE
cout
<<
"
\n
uniq hivasa utan p: "
<<
(
void
*
)
p
<<
endl
;
memtrace
::
mem_dump
(
&
test
,
sizeof
(
test
));
/// Segit megfigyelni a memóriatartalmat
#else
cout
<<
"
\n
Nincs definialva a MEMTRACE"
#endif // MEMTRACE
#endif // CPORTA
*
p
=
0
;
/// p az új sorozat végére mutat
cout
<<
test
<<
endl
;;
/// KIÍRÁS: szia C+ + !
...
...
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