 |
|

09.10.2022, 18:37
|
|
Познавший АНТИЧАТ
Регистрация: 14.10.2021
Сообщений: 1,412
С нами:
2411807
Репутация:
118
|
|
Сообщение от ARMOR
Возможно у тебя не установлена снизу водировка Windows 1251.
Нажми туда куда указывает стрелочка
Потом что-то типо "повторно открыть в кодировке" и потом найти Cyrilic Windows 1251, и выбери её.
Даже в C++ надо кодировку 1251?
|
|
|

09.10.2022, 18:37
|
|
Флудер
Регистрация: 02.02.2019
Сообщений: 5,070
С нами:
3831395
Репутация:
183
|
|
Сообщение от Sadow
Даже в C++ надо кодировку 1251?
Да, ты же хочешь использовать кириллицу
|
|
|

09.10.2022, 18:39
|
|
Познавший АНТИЧАТ
Регистрация: 14.10.2021
Сообщений: 1,412
С нами:
2411807
Репутация:
118
|
|
Сообщение от ARMOR
Да, ты же хочешь использовать кириллицу

|
|
|

09.10.2022, 19:30
|
|
Постоянный
Регистрация: 16.08.2020
Сообщений: 553
С нами:
3022568
Репутация:
68
|
|
есть метод в структуре, в который требуется передать переменную, как сделать метод, чтобы принимал перменную так x.func(), а не так func(x). К примеру .c_str()
Что ему надо?
C++:
Код:
#include
#include
using
namespace
std
;
template
struct
ArrayAction
{
ArrayAction
(
const
T
&
_array
)
{
for
(
auto
i
=
_array
.
cbegin
(
)
;
i
!=
_array
.
cend
(
)
;
++
i
)
cout
dad
{
1
,
5
,
6
,
2
}
;
ArrayAction
>
(
dad
)
;
}
но если сделаю так, все компилируется

|
|
|

09.10.2022, 20:13
|
|
Познавший АНТИЧАТ
Регистрация: 14.10.2021
Сообщений: 1,412
С нами:
2411807
Репутация:
118
|
|
Я пофиксил. Надо было пересохранить просто после переставления кодировки. Теперь всё нормально

|
|
|

09.10.2022, 20:30
|
|
Флудер
Регистрация: 06.11.2017
Сообщений: 2,759
С нами:
4483143
Репутация:
183
|
|
Сообщение от rinkу
есть метод в структуре, в который требуется передать переменную, как сделать метод, чтобы принимал перменную так x.func(), а не так func(x). К примеру .c_str()
Что ему надо?
C++:
Код:
#include
#include
using
namespace
std
;
template
struct
ArrayAction
{
ArrayAction
(
const
T
&
_array
)
{
for
(
auto
i
=
_array
.
cbegin
(
)
;
i
!=
_array
.
cend
(
)
;
++
i
)
cout
dad
{
1
,
5
,
6
,
2
}
;
ArrayAction
>
(
dad
)
;
}
но если сделаю так, все компилируется
Ниче не понятно, но оч интересно
|
|
|

09.10.2022, 22:12
|
|
Постоянный
Регистрация: 16.08.2020
Сообщений: 553
С нами:
3022568
Репутация:
68
|
|
Сообщение от kin4stat
Ниче не понятно, но оч интересно
брат
мне нужен метод вида x.func(), т.е "х" входная информация. что я хочу сделать:
C++:
Код:
template
struct
COUT
{
string
operator
(
)
(
T
&
x
)
{
stringstream temp
;
copy
(
x
.
begin
(
)
,
x
.
end
(
)
,
std
::
ostream_iterator
(
temp
,
" "
)
)
;
return
temp
.
str
(
)
;
}
}
;
int
main
(
)
{
vector
VEC
{
1
,
3
,
5
,
4
}
;
stringstream result
;
cout
>
(
)
(
VEC
)
;
// VEC.COUT>();
}
17 строка, как сделать вызов в таком виде как в коменте? что изменить в структуре для этого
|
|
|

10.10.2022, 10:41
|
|
Участник форума
Регистрация: 20.12.2021
Сообщений: 290
С нами:
2315345
Репутация:
48
|
|
Сообщение от Sadow
Может ли это быть из за того что я использую Visual Studio Code?
Не имеет большого значение, оно должно в любом компиляторе на винде работать
|
|
|

10.10.2022, 19:47
|
|
Постоянный
Регистрация: 15.12.2013
Сообщений: 412
С нами:
6530249
Репутация:
133
|
|
Сообщение от rinkу
17 строка, как сделать вызов в таком виде как в коменте? что изменить в структуре для этого
Через стандартное наследование, это первое что в голову приходит
C++:
Код:
template
class
VecExt
:
public
std
::
vector
{
public
:
VecExt
(
std
::
initializer_list
l
)
:
std
::
vector
(
l
)
{
}
std
::
string
to_string
(
)
const
{
std
::
stringstream temp
;
std
::
copy
(
this
->
begin
(
)
,
this
->
end
(
)
,
std
::
ostream_iterator
(
temp
,
" "
)
)
;
return
temp
.
str
(
)
;
}
}
;
Но вообще можно конкретно для i/o потоков и для вашего примера указать реализацию оператора
C++:
Код:
friend
std
::
ostream
&
operator
&
m
)
{
std
::
copy
(
m
.
begin
(
)
,
m
.
end
(
)
,
std
::
ostream_iterator
(
os
,
" "
)
)
;
return
os
;
}
Полный код:
Сообщение от Спойлер
C++:
[CODE]
#include
#include
#include
#include
#include
#include
template
class
VecExt
:
public
std
::
vector
{
public
:
VecExt
(
std
::
initializer_list
l
)
:
std
::
vector
(
l
)
{
}
std
::
string
to_string
(
)
const
{
std
::
stringstream temp
;
std
::
copy
(
this
->
begin
(
)
,
this
->
end
(
)
,
std
::
ostream_iterator
(
temp
,
" "
)
)
;
return
temp
.
str
(
)
;
}
friend
std
::
ostream
&
operator
&
m
)
{
std
::
copy
(
m
.
begin
(
)
,
m
.
end
(
)
,
std
::
ostream_iterator
(
os
,
" "
)
)
;
return
os
;
}
}
;
int
main
(
)
{
const
auto
v
=
VecExt
{
1
,
3
,
5
,
4
}
;
std
::
cout
|
|
|

11.10.2022, 16:09
|
|
Флудер
Регистрация: 02.02.2019
Сообщений: 5,070
С нами:
3831395
Репутация:
183
|
|
Есть значение 0x32 ( 50 ) которое хранится в переменной signed char по смещению 63F18, и имеет максимальное значение 127, но мне нужно чтобы у меня была возможность вставлять туда значения INT16.
Код из IDA:
C++:
Код:
.
text
:
10063F
10
8
B AE E6
63
00
+
mov ebp
,
[
esi
+
63E6
h
]
.
text
:
10063F
10
00
.
text
:
10063F
16
83
C5
32
add ebp
,
32
h
;
'2'
UP: Код взял из samp.dll R1 если что.
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|