注册 登录
编程论坛 C++教室

“左边必须有类/结构/联合”的问题

宋立鹏 发布于 2013-06-11 21:26, 13327 次点击
下面面是我写的一个直接插入排序的程序,用了vector,但是最后调试的时候一直显示两个错误,求大神帮忙看一下哈
#ifndef INSERTSORT_H
#define INSERTSORT_H
#include <iostream>
#include <vector>
using namespace std;
class InsertSort
{
private:
    int len;
    vector<int> list;
public:
    InsertSort(vector<int> _list,int _len);
    void insert_sort();
    void out();
};
#endif
#include "InsertSort.h"
#include <iostream>
using namespace std;

InsertSort::InsertSort(vector<int> _list,int _len)
{
    for(int i=0;i<_len;i++)
    {
        list.push_back( _list[i]);
    }
    len=_len;

}
void InsertSort::insert_sort()
{
 int InsertNum;
 for(int i=1;i<len;i++)
 {
     InsertNum=list[i];
     int j=i;
     while(j>0&&InsertNum<list[j-1])
     {
         list[j]=list[j-1];
         j--;
     }
     list[j]=InsertNum;
 
 }
}
void InsertSort::out()
{
    for(int i=0;i<len;i++)
    {    cout<<list[i]<<endl;
        if((i+1)%18==0)
            cout<<endl;
    }
}
#include "InsertSort.h"
#include <iostream>
#include <vector>
#include "InsertSort.cpp"
using namespace std;

void main()
{
   vector<int> vec;
   vec.push_back(6);
   vec.push_back(62);
   vec.push_back(5);
   vec.push_back(12);
   vec.push_back(45);
   vec.push_back(23);
   vec.push_back(9);
   vec.push_back(44);
   vec.push_back(19);
   vec.push_back(22);
   vec.push_back(1);
   vec.push_back(7);
   int size;
   size=vec.size();
   InsertSort  arry(vector<int> vec,int size);
   arry.insert_sort();
   arry.out();
  



}
5 回复
#2
宋立鹏2013-06-11 21:27
这是显示的错误
.\main.cpp(25) : error C2228: “.insert_sort”的左边必须有类/结构/联合
.\main.cpp(26) : error C2228: “.out”的左边必须有类/结构/联合
#3
peach54602013-06-12 07:57
InsertSort  arry(vector<int> vec,int size);
谁教的?
#4
宋立鹏2013-06-12 09:59
呵呵,多谢,我已经改正过来了
#5
lzj125302013-06-12 11:21
这都没初始化对象
#6
yeme20132013-06-12 14:59
回复 3楼 peach5460
我新手看着也不舒服
1