C++:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
| // Werkt wel void func (int *& rpInt) { int a = *rpInt + 2; } // Werkt niet void func (const int *& rpInt) { int a = *rpInt + 2; } int main() { int nvar=2; int* pvar = &nvar; func(pvar); return 0; } |
In het tweede geval krijg ik de volgende melding van de compiler:
1>Compiling... 1>main.cpp 1>main.cpp(15) : error C2664: 'func' : cannot convert parameter 1 from 'int *' to 'const int *&' 1> Conversion loses qualifiers
In Borland C++Builder 6 werkt het wel. Is er een reden waarom dit niet kan in Visual Studio 2005? Ik snap hem even niet.