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
Commit
05df7b95
authored
Feb 18, 2021
by
Szeberényi Imre
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Typo
!defined MEMTRACE WINX macro
parent
1f73ca85
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
31 additions
and
15 deletions
+31
-15
max.hpp
+2
-2
memtrace.cpp
+3
-2
memtrace.h
+13
-4
nem_oo_teszt.cpp
+13
-7
No files found.
max.hpp
View file @
05df7b95
#ifndef _MAX_HPP
#
ifndef
_MAX_HPP
#define _MAX_HPP
/**
* file max.hpp
...
...
@@ -6,7 +6,7 @@
* ha a tovabbi kommentek nem olvashatok helyesen!)
*
*
* A C++ nem OO b
õ
vítéseinek gyakorlásához.
* A C++ nem OO b
ő
vítéseinek gyakorlásához.
*
*
* FELADATOK:
...
...
memtrace.cpp
View file @
05df7b95
...
...
@@ -6,9 +6,10 @@ Kanari: Szeberenyi Imre, 2013.
VS 2012: Szeberényi Imre, 2015.,
mem_dump: 2016.
meset felszabaditaskor: 2018.
typo: 2019.
*********************************/
/*defini
e
alni kell, ha nem paracssorbol allitjuk be (-DMEMTRACE) */
/*definialni kell, ha nem paracssorbol allitjuk be (-DMEMTRACE) */
/*#define MEMTRACE */
#ifdef _MSC_VER
...
...
@@ -488,7 +489,7 @@ void operator delete[](void * p) THROW_NOTHING {
}
/* Visual C++ 2012 miatt kell, mert háklis, hogy nincs megfelel
õ
delete, bár 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
{
memtrace
::
traced_delete
(
p
,
FDELETE
);
}
...
...
memtrace.h
View file @
05df7b95
...
...
@@ -5,7 +5,7 @@ Keszitette: Peregi Tamas, BME IIT, 2011
Kanari: Szeberenyi Imre, 2013.,
VS 2012: Szeberényi Imre, 2015.,
mem_dump: 2016.
inclue-ok: 2017., 2018.
inclue-ok: 2017., 2018.
2019.
*********************************/
#ifndef MEMTRACE_H
...
...
@@ -144,12 +144,21 @@ END_NAMESPACE
#include <stdlib.h>
#ifdef __cplusplus
#include <iostream>
/* ide gy
ûjtjük 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 <sstream>
#include <vector>
#include <list>
#include <map>
#include <algorithm>
#include <functional>
#include <memory>
#include <iomanip>
#include <locale>
#include <typeinfo>
#include <ostream>
#include <stdexcept>
#endif
#ifdef MEMTRACE_CPP
namespace
std
{
...
...
@@ -197,7 +206,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, bár 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
;
...
...
@@ -206,7 +215,7 @@ void operator delete[](void *p, int, const char *) THROW_NOTHING;
#define delete memtrace::set_delete_call(__LINE__, __FILE__),delete
#ifdef CPORTA
//
#define system(...) // system(__VA_ARGS__)
#define system(...) // system(__VA_ARGS__)
#endif
#endif
/*MEMTRACE_CPP*/
...
...
nem_oo_teszt.cpp
View file @
05df7b95
/**
/**
* \file nem_oo_teszt.cpp
* (UTF-8 kodolasu fajl. Allitsa at a megjen
e
tes kodolasat,
* (UTF-8 kodolasu fajl. Allitsa at a megjen
i
tes kodolasat,
* ha a tovabbi kommentek nem olvashatok helyesen!)
*
* A C++ nem OO bővítéseinek gyakorlásához.
...
...
@@ -27,10 +27,12 @@
#include <locale>
// Segédmakró, hogy windows-e
#define WINX defined(WIN32) || defined(_WIN32) || defined(WIN64) || defined(_WIN64)
#if (defined(WIN32) || defined(_WIN32) || defined(WIN64) || defined(_WIN64))
#define WINX
#endif
// Ha Windows, akkor a karakterkészlet állítás miatt (szorgalmi feladatban) kell a windows.h
#if WINX
#if
def
WINX
#include <windows.h>
#endif // WINX
...
...
@@ -108,7 +110,7 @@ int main() {
cout
<<
"
\n
test tomb tartalma a uniq hivasa elott
\n
"
;
memtrace
::
mem_dump
(
&
test
,
sizeof
(
test
));
#else
cout
<<
"
\n
Nincs definialva a MEMTRACE
"
cout
<<
"
\n
Nincs definialva a MEMTRACE
!
\n
"
;
#endif // MEMTRACE
#endif // CPORTA
cout
<<
test
<<
endl
;
...
...
@@ -118,7 +120,7 @@ int main() {
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
"
cout
<<
"
\n
Nincs definialva a MEMTRACE
!
\n
"
;
#endif // MEMTRACE
#endif // CPORTA
*
p
=
0
;
/// p az új sorozat végére mutat
...
...
@@ -133,7 +135,11 @@ int main() {
*
p
=
'#'
;
if
(
memcmp
(
test2
,
"s
\0
zia C+ + !#"
,
13
)
!=
0
)
{
cout
<<
"*** Hibas unique:
\\
0 végjelet keres, vagy nem jó visszatérési értéket ad. ***"
<<
endl
;
#ifdef MEMTRACE
memtrace
::
mem_dump
(
&
test2
,
19
);
#else
cout
<<
"
\n
Nincs definialva a MEMTRACE!
\n
"
;
#endif
}
#endif // CPORTA
#ifndef CPORTA
...
...
@@ -243,7 +249,7 @@ void setDefLang() {
/// Ha ennek a fájlnak a karakterkódolása nem egyezik meg az alapértelmezett kódolással,
/// akkor az ékezetes kiírások nem jól látszanak.
/// Alapértelmezett kódolásra váltás CodeBlocks-ban: Edit->File encoding -> System default
#if WINX
#if
def
WINX
if
(
strstr
(
p
,
".1250"
)
!=
NULL
)
{
/// Windows-1250-es kódolást használ.
SetConsoleCP
(
1250
);
SetConsoleOutputCP
(
1250
);
...
...
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