(C++学习)关于CString的一些疑问

 1 #include <iostream>
 2 #include <string>
 3 #include <afx.h>
 4 #include <vector>
 5 
 6 using std::vector;
 7 using std::cout;
 8 using std::endl;
 9 
10 int  main()
11 {
12     CString strText ="";
13     int testArray[] ={1,2,3,4,5,6};
14     vector<int> vecNum(testArray,testArray+6); //vector --可以指定数据类型的容器,通常用于未确定大小的数组中
15     cout<<vecNum.size()<<endl; // 输出6
16     for (int i = 0; i < vecNum.size(); i++)
17     {
18         cout << vecNum[i] <<endl; //输出:1、2、3、4、5、6
19 
20         // 将CString类型赋值
21         // _T("%d") 是c++中一个类似解析模板的东西, %d 代表 int 类型, long 类型就要换成 %ld
22         strText.Format(_T("%d"), vecNum[i]); 
23 
24         //输出:1、2、3、4、5、6
25         cout << strText<<endl; 
26     }
27     cout<<vecNum.size()<<endl; // 输出6
28     return 0;
29 30 31 }

上述代码中:

cout << strText<<endl; 

出现问题了,理论上也应该输出:1、2、3、4、5、6

但是输出的是一个类似 004D9540 的数值,这个数字是随时变得,但是6次输出都是一模一样

问了下公司的C++,有位说是内存地址,但是网上找了一些方法都不能进行解析。

如果哪位大佬知道,私信留言都可以。

posted @ 2017-09-28 10:49  坂上智代  阅读(215)  评论(1编辑  收藏  举报