c++ 中 类,类模版,对象的关系
请问这几个到底啥关系呀 {:5_100:} 已经晕了
如
string v1; v1 是个对象 ,那string是个类吗 c++的类是类似于c里的结构体吗
又如
vector<int> v2;
那v2是个对象吗 ; 书上说vector是个类模版
vector 和string到底是啥
那string是个类吗
是
c++的类是类似于c里的结构体吗
类似
那v2是个对象吗
是
vector 和string到底是啥
类 本帖最后由 人造人 于 2021-8-29 21:59 编辑
vector
template <class T, class Allocator = allocator<T> >
class vector
{
....
};
string
template<class charT, class traits = char_traits<charT>, class Allocator = allocator<charT> >
class basic_string
{
....
};
typedef basic_string<char> string;
人造人 发表于 2021-8-29 21:54
vector
啥意思 都是类吗 万千只cnm 发表于 2021-8-29 22:10
啥意思 都是类吗
带模板的类
人造人 发表于 2021-8-29 22:12
带模板的类
哦哦 谢谢
万千只cnm 发表于 2021-8-29 23:09
哦哦 谢谢
c++ 分 3 大块内容
1. 继承自C语言的部分
2. 类,对象,类继承,这些
3. 模板
这 3 大块内容彼此独立,但又互相兼容,可以单独来学,逐个击破
就是说,在学类,继承这部分的时候完全不需要考虑模板,学模板的时候也不需要考虑类,继承
学C语言的那部分的时候不需要考虑 C++
建议的学习顺序就是上面的
先学 继承自C语言的部分
然后 类,对象,类继承,这些
最后 模板
值得一提的是,还有 2 个内容,我没有把这 2 个内容算在上面的 3 大块内容中
一个是 C++ 标准库 stl
另一个是 C++ 的异常处理
对于 stl,这就和 C语言中的 C标准库一样,我在给C语言的内容划分块的时候也没有算 C标准库
给 C++ 分块的时候我也不想把 C++ 标准库算在内
因为我认为标准库是语言的附属品,是和语言并列的,在给语言分块的时候不应该算上标准库
对于 C++ 的异常处理,感觉异常处理的内容不多,不应该和上面的 3 个并列,但是异常处理很重要,值得一提,到现在我也只是在理论上明白异常处理机制,还没有看过异常处理部分的源代码,其他块也一样,还没有看过源代码,还没有从源代码层理解
当然,如果算上异常处理,那就是 4 大块
这 4 大块彼此独立,可以学完一个再学一个 人造人 发表于 2021-8-29 23:40
c++ 分 3 大块内容
1. 继承自C语言的部分
2. 类,对象,类继承,这些
好{:5_91:}
页:
[1]