A problem while linking c++ to python
Compare the following two extern functions in c++:
(1)
1 extern "C" 2 { 3 void test() 4 { 5 vector<int> a(10); 6 for (auto i = 0; i < 10; ++i) 7 { 8 a[i] = i * i; 9 cout << a[i] << endl; 10 } 11 } 12 }
(2)
1 extern "C" 2 { 3 void test() 4 { 5 ofstream otf; 6 otf.open("output"); 7 vector<int> a(10); 8 for (auto i = 0; i < 10; ++i) 9 { 10 a[i] = i * i; 11 otf << a[i] << " "; 12 } 13 otf.close() 14 } 15 }
The first one can be called by python but the second can not. Why?

浙公网安备 33010602011771号