C++ 这个简单的自定义类怎么错啊? !!!!!!!

[复制链接]
查看11 | 回复1 | 2008-10-10 23:12:30 | 显示全部楼层 |阅读模式
class use_count
{
friend class use;
size_t use_s;
string *shi;
use_count(string ll):shi(new string(ll)),use_s(1){}
use_count():shi("11"),use_s(1){}//箭头指向这里
~use_count(){delete shi;}
};
class use
{
use(string hi);count(hi){}
private:
use_count count;
string shiti;
};
int main()
{
return 0;
}
错误信息:
1>------ 已启动生成: 项目: aaaa, 配置: Debug Win32 ------
1>正在编译...
1>aaaa.cpp
1>f:\c++实验文件\vs2005\aaaa\aaaa\aaaa.cpp(27) : error C2440: 'initializing' : cannot convert from 'const char [3]' to 'std::string *'
1>
Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
1>f:\c++实验文件\vs2005\aaaa\aaaa\aaaa.cpp(27) : error C2439: 'use_count::shi' : member could not be initialized
1>
f:\c++实验文件\vs2005\aaaa\aaaa\aaaa.cpp(25) : see declaration of 'use_count::shi'
1>f:\c++实验文件\vs2005\aaaa\aaaa\aaaa.cpp(32) : error C2061: syntax error : identifier 'hi'
1>f:\c++实验文件\vs2005\aaaa\aaaa\aaaa.cpp(32) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>f:\c++实验文件\vs2005\aaaa\aaaa\aaaa.cpp(32) : warning C4183: 'count': missing return type; assumed to be a member function returning 'int'
1>f:\c++实验文件\vs2005\aaaa\aaaa\aaaa.cpp(34) : error C2365: 'use::count' : redefinition; previous definition was 'member function'
1>
f:\c++实验文件\vs2005\aaaa\aaaa\aaaa.cpp(32) : see declaration of 'use::count'
1>生成日志保存在“file://f:\C++实验文件\vs2005\aaaa\aaaa\Debug\BuildLog.htm”
1>aaaa - 5 个错误,1 个警告
========== 生成: 0 已成功, 1 已失败, 0 最新, 0 已跳过 ==========

回复

使用道具 举报

千问 | 2008-10-10 23:12:30 | 显示全部楼层
string不是这么用的不要new string,string自己会分配所需要的内存。还有use的构造函数没写对,分号改成冒号。class use_count { friend class use; size_t use_s; string shi; use_count(string ll):shi(ll),use_s(1){} use_count():shi("11"),use_s(1){}//箭头指向这里 ~use_count(){} }; class use { use(string hi):count(hi){} private: use_count count; string...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行