38Fermer40
Kevin KoflerLe 18/05/2016 à 00:35
Warpten (./31) :
./29 http://ideone.com/LEGvux

Aux temps pour moi, j'ai mal expliqué (en même temps, sur téléphone grin)
C'est comme en C++ en fait:#include <QString> #include <QVector> #include <QTextStream> #include <cstdio> void Value(QVector<int> l) { l = QVector<int>(1); } void Reference(QVector<int> &l) { l = QVector<int>(1); } // Il n'y a pas de différence entre Reference et Out en C++. void Out(QVector<int> &l) { l = QVector<int>(1); } int main(void) { auto l = QVector<int>(2); auto m = QVector<int>(3); auto n = QVector<int>(4); Value(l); Reference(m); Out(n); QTextStream console(stdout); console << QStringLiteral("%1 2\n").arg(l.size()); console << QStringLiteral("%1 3\n").arg(m.size()); console << QStringLiteral("%1 4\n").arg(n.size()); return 0; }
[kevin@laptop64 ~]$ g++ -std=gnu++11 -Os -fPIC -s `pkg-config --cflags --libs Qt5Core` reftest.cpp -o reftest
[kevin@laptop64 ~]$ ./reftest
2 2
1 3
1 4