|
|
刚学C++编程.哪位兄弟帮我看看这是什么原因..
////////////////////////////////////file main.cpp
#include <iostream>
#include <string>
#include "MyStringOpClass.h"
using namespace std;
int main()
{
string str1="asdglk;jei;jlasf";
string str2;
str2 = MyStringOpClass::left(7, str1 );
cout <<"address of str2 is "<< &str2<<endl;
cout << "str1 is :"<< str1<<endl
<< "str2 is :" << str2 <<endl;
return 0;
}
////////////////////////////file MyStringOpClass.cpp
#include<string>
#include"MyStringOpClass.h"
using namespace std;
string MyStringOpClass::left(string::size_type len,const string& src)
{
string::size_type i,length;
i = src.length();
length = (len <= i)?len:i;
return src.substr(0,length);
}
//////////file MystringOpclass.h
#ifndef MYSTRNGOPCLASS_H
#define MYSTRINGOPCLASS_H
#include <string>
using namespace std;
class MyStringOpClass
{
public:
MyStringOpClass(){ };
~MyStringOpClass() { };
static string left(string::size_type len,const string& src);
};
#endif //MYSTRINGOPCLASS_H
上面的程序在VC6下面编译通过,并且能生成可执行文件.在Gcc下面 编译能通过.但是在连接阶段出错误...
哪位兄弟帮我看看..... |
|