C++
文章平均质量分 78
lenghuo2002
这个作者很懒,什么都没留下…
展开
-
C++ typename 用法
C++ typename 用法目录typename的常见用法对于typename这个关键字,如果你熟悉C++的模板,一定会知道它有这样一种最常见的用法(代码摘自C++ Primer): // implement strcmp-like generic compare function // returns 0 if the values are equal,转载 2015-03-07 03:05:42 · 654 阅读 · 0 评论 -
12.2 - Virtual functions
首先看下面的例子class Base{protected: public: const char* GetName() { return "Base"; }}; class Derived: public Base{public: const char* GetName() { return "Derived"; }}; int main(){翻译 2013-06-28 01:47:35 · 451 阅读 · 0 评论 -
11.5 - Inheritance and access specifiers
1. Protected access specifier限定类成员只能被同一个class或derived class的成员函数访问class Base{public: int m_nPublic; // can be accessed by anybodyprivate: int m_nPrivate; // can only be accessed by Base翻译 2013-06-18 03:34:01 · 715 阅读 · 0 评论 -
8.7 - The hidden “this” pointer
首先举个简单的类的例子class Simple{private: int m_nID; public: Simple(int nID) { SetID(nID); } void SetID(int nID) { m_nID = nID; } int GetID() { return m_nID; }};下面是翻译 2013-06-18 13:51:06 · 420 阅读 · 0 评论 -
14.3 - Template classes
Templates and container classes首先我们看下面的类class IntArray{private: int m_nLength; int *m_pnData; public: IntArray() { m_nLength = 0; m_pnData = 0; } In翻译 2013-06-19 01:57:45 · 478 阅读 · 0 评论 -
8.3 - Public vs private access specifiers
Class和Struct的主要区别之一就是class可以明确的使用access specifier来限制谁能访问它的成员。C++提供了3种access specifier关键字: public, private 和 protected. protected 将在介绍完inheritance后讨论。例1:class Access{ int m_nA; // private by翻译 2013-06-18 01:50:09 · 607 阅读 · 0 评论 -
14.2 - Function template instances
Function template instancesC++编译器并不直接编译template函数。编译器遇到template函数调用后,会复制一份template函数并把占位符类型替换成真正的数据类型。拥有真正数据类型的函数称为function template instance。template // this is the template parameter declarat翻译 2013-06-19 01:13:30 · 373 阅读 · 0 评论 -
14.1 - Function templates
The need for function templates首先举例你想写一个返回两个数中的最大值,你可以写成这样int max(int nX, int nY){ return (nX > nY) ? nX : nY;}这个函数对于int型的数据可以很好的工作。可以如果以后要处理double型的数据怎么办呢?简单来说,你可以重载这个函数double max翻译 2013-06-19 00:04:58 · 444 阅读 · 0 评论