On Thu, Jun 09, 2005 at 09:39:21PM +0300, Jussi Laako
wrote:
On Thu, 2005-06-09 at 18:14 +0200, stefan kersten
wrote:
int access(std::vector<int> v, int i)
At least you are making copy here, should be
int access(std::vector<int> &v, int i)
actually not, structs are passed by reference.
$ cat a.cpp
#include <cassert>
struct A {
A() { }
A(const A &) { assert(0); }
};
void f(A) { }
int main(int argc, char **argv)
{
A a;
f(a);
}
$ gcc -O3 a.cpp -o a
$ ./a
a: a.cpp:5: A::A(const A&): Assertion `0' failed.
Aborted
$