#include <iostream>
#include <vector>
#include <memory>
#include <string>
#include <cstring>
using namespace std;
#include<vector>
int main() {
vector<int> *v = new vector<int>;
(*v).push_back(1);
v->push_back(2);
printf("*at(0) = %d\n",(*v).at(0));
printf("*at(0) = %d\n",(*v).at(1));
//v5.0
//vector<shared_ptr<string>> *buffers = new vector<std::make_shared<std::string>>("88888888888");
vector<shared_ptr<string>> *buffers = new vector<std::shared_ptr<string>>;
//v5.1
//存放在二级指针中[0][0]
(*buffers).push_back(std::make_shared<std::string>("88888888888"));
printf("*at(0) = %s\n",(*buffers).at(0)->data());
//v5.2
//存放在二级指针中[0][1]
buffers->push_back(std::make_shared<std::string>("9999999"));
printf("*at(0) = %s\n",(*buffers).at(0)->data());
printf("at(0) = %s\n",buffers->at(1)->data());
printf("at(0) = %s\n",buffers[0][0]->data());
printf("at(0) = %s\n\n",buffers[0][1]->data());
//v5.3
(*buffers)[0]->assign("44444");
buffers[0][1]->assign("55555555");
printf("-----v5.3---------------\n");
printf("at(0) = %s\n",buffers[0][0]->data());
printf("at(1) = %s\n",buffers[0][1]->data());
//v5.4
vector<shared_ptr<string>> btmp1 = *buffers;
vector<shared_ptr<string>> &btmp2 = *buffers;
btmp2.at(0)->assign("aaaaaaaaa");
btmp2.at(1)->assign("bbbbbbbbbb");
printf("-----v5.4---------------\n");
printf("at(0) = %s\n",buffers[0][0]->data());
printf("at(1) = %s\n",buffers[0][1]->data());
cout<<"-----end----"<<endl;
return 0;
}
vector<shared_ptr<>>
于 2024-03-13 20:08:36 首次发布