
Сообщение от
Nagdiel
Обычный rename в IDE и тот не всегда корректно работает.
Действительно, ни одной IDE для C++ с корректным переименованием нет, все по тихому ломают код.
Вот простой примерчик:
C++ |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
| #define call_func(x) x.func();
#define how_to_rename(x, a, b, c) x.a##b##c();
template <typename T>
void call_func_templ(T t) { t.func(); }
struct A {
void func() {} // <== rename this function
};
struct B {
void func() {}
};
int main()
{
A a;
B b;
call_func(a);
call_func(b);
call_func_templ(a);
call_func_templ(b);
how_to_rename(a, f, un, c);
how_to_rename(b, f, u, nc);
return 0;
} |
|