1.以上是对本章知识的大致梳理,下面通过我自己在编程中遇到的问题再次总结。

  1. 私有成员必须通过get()函数访问吗?能不能直接调用?

    • 私有成员必须通过公共函数接口去访问,比如设置set()修改成员内容,利用get()取值。
    • 另外还可以利用友元访问#include<iostream>
      using namespace std;

      class B;
      class A
      {
      friend B;
      public:
      A(){}
      ~A(){}
      private:
      void print(){cout << "It's in A class" << endl;}
      };

      class B
      {
      public:
      B(){}
      ~B(){}
      void test(){a.print();}//A的私有成员函数直接调用
      private:
      A a;
      };

      int main()
      {
      B b;
      b.test();
      system("pause");
      return 0;
      }

  2. 构造函数()要不要写出参数?
    1. 在类中构造函数必须要有形参,可以给定默认值参数,也可以不给。对象初始化可以通过对象.(参数),也可以通过对象.set()修改默认值。
  3. 使用内联示例:
     #include<iostream>
    using namespace std;
    class Dog{
    public:
    Dog(int initage=,int initweight=);
    ~Dog();
    int GetAge(){
    return age;
    }//内联隐式函数
    void setage(int ages){
    age=ages;
    }
    int getweight(){
    return weight;
    }
    void setweight(int weights){
    weight=weights;
    } private:
    int age;int weight;
    };
    Dog::Dog(int initage,int initweight){
    age=initage;
    weight=initweight;
    }
    Dog::~Dog(){
    }
    int main(){
    Dog a;
    cout<<a.getweight();
    return ;
    }

4.结构体和共同体:定义一个"数据类型" datatype类,能处理包含字符型、整型、浮点型三种类型的数据,给出其构造函数。

 #include <iostream>
using namespace std;
class datatype{
enum{ character, integer, floating_point } vartype;
union { char c; int i; float f; };
public: datatype(char ch)
{ vartype = character; c = ch; }
datatype(int ii) {
vartype = integer; i = ii; } 
datatype(float ff) { 
vartype = floating_point; f = ff; } 
void print(); }; 
void datatype::print() { switch (vartype) { case character: 
cout << "字符型: " << c << endl; break; 
case integer: 
cout << "整型: " << i << endl; break; 
case floating_point: 
cout << "浮点型: " << f << endl; break; } } 
void main() { 
datatype A('c'), B(), C(1.44F);
A.print(); 
B.print(); 
C.print(); 
}

【C++/类与对象总结】的更多相关文章

  1. Java编程里的类和对象

    像我们搞计算机这块的,都知道这么一件事,当前的计算机编程语言主要分为两大块,一为面向过程,二为面向对象.Java就是一门纯面向对象的语言.学习了一个月左右的Java,在下对于Java当中的类和对象有了 ...

  2. Python - 类与对象的方法

    类与对象的方法

  3. C++基础知识(5)---类和对象

    终于把C++中的基础在前面的几篇博客中总结完了,可能还有一些语法还没有总结到,没关系,以后用到了再查资料就好.类是C++中的一个非常重要的概念,这是区别你使用的C++到底是面向过程还是面向对象的一个重 ...

  4. 简述JavaScript对象、数组对象与类数组对象

    问题引出 在上图给出的文档中,用JavaScript获取那个a标签,要用什么办法呢?相信第一反应一定是使用document.getElementsByTagName('a')[0]来获取.同样的,在使 ...

  5. 前端学PHP之面向对象系列第一篇——类和对象

    × 目录 [1]类 [2]成员属性[3]成员方法[4]对象[5]成员访问[6]this 前面的话 面向对象程序设计(OOP)是一种计算机编程架构.计算机程序由单个能够起到子程序作用的单元或对象组成,为 ...

  6. Objective-C Runtime 运行时之一:类与对象

    Objective-C语言是一门动态语言,它将很多静态语言在编译和链接时期做的事放到了运行时来处理.这种动态语言的优势在于:我们写代码时更具灵活性,如我们可以把消息转发给我们想要的对象,或者随意交换一 ...

  7. [Java入门笔记] 面向对象编程基础(一):类和对象

    什么是面向对象编程? 我们先来看看几个概念: 面向过程程序设计 面向过程,是根据事情发展的步骤,按进行的顺序过程划分,面向过程其实是最为实际的一种思考方式,可以说面向过程是一种基础的方法,它考虑的是实 ...

  8. 解析Java类和对象的初始化过程

    类的初始化和对象初始化是 JVM 管理的类型生命周期中非常重要的两个环节,Google 了一遍网络,有关类装载机制的文章倒是不少,然而类初始化和对象初始化的文章并不多,特别是从字节码和 JVM 层次来 ...

  9. 02OC的类和对象

    这章重点介绍OC的类以及对象,由于C语言是面向过程语言,而OC只是对于C语言多了一些面向对象的特性,所以OC相对于其他面向对象语言,例如C#.Java等没有那么多的语法特性,所以差别还是比较大的. 一 ...

  10. swift基础:第六部分:类与对象

    http://reactnative.cn/docs/0.24/getting-started.html#content(react Native 开发文档) 互联网这个时代,你松懈一天,就会有很多很 ...

随机推荐

  1. Why validation set ?

    Let's assume that you are training a model whose performance depends on a set of hyperparameters. In ...

  2. golang的dlv调试工具print打印字符串显示more,无法显示更多

    使用dlv (delve golang调试器)打印字符串无法打印全,只能打印一部分(64个字节),在gdb中有 (gdb) set print elements Argument required ( ...

  3. 浪院长 | spark streaming的使用心得

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/rlnLo2pNEfx9c/article/details/82505159 今天.主要想聊聊spar ...

  4. hive sql 常见异常

    1.union Logging initialized using configuration in file:/home/xiaoju/hadoop/apache-hive-1.2.1-bin/co ...

  5. HashTable代码解析

    HashTable继承关系如下: HashTable是一个线程安全的[键-值对]存储结构.其存储结构和HashMap相同,参考这里. 1. HashTable定义了一个类型为Entry<K,V& ...

  6. Sandcastle Help File Builder(.NET帮助文档工具)的版本选择心得——支持VS2010至VS2015,高版本项目文件问题

    作者: zyl910 一.缘由 "Sandcastle Help File Builder"(简称SHFB)是一个很好用.NET 帮助文档生成工具. 但它的每个版本支持的VS版本范 ...

  7. xhr是什么文件类型?

    xhr:XMLHttpRequest在后台与服务器交换数据,这意味着可以在不加载整个网页的情况下,对网页某部分的内容进行更新. 是Ajax的一种用法,而Ajax并不是一门语言,只是一种不需要加载整个网 ...

  8. Nginx——location常见配置指令,alias、root、proxy_pass

    1.[alias] 别名配置,用于访问文件系统,在匹配到location配置的URL路径后,指向[alias]配置的路径.如: location /test/ { alias /home/sftp/i ...

  9. SNF软件开发机器人-子系统-功能-数据列表分页与不分页-瀑布式分页-如何配置?

    [列表]分页 1.效果展示: (1)不分页 (2)普通分页 (3)瀑布式分页 2.使用说明: 打开显示页面,点击开发者选项的简单配置按钮.在功能表信息中选择需要的分页方式.普通分页和瀑布式分页需要配合 ...

  10. 物联网架构成长之路(25)-Docker构建项目用到的镜像1

    0. 前言 现在项目处于初级阶段,按照规划,先构建几个以后可能会用到的Image,并上传到阿里云的Docker仓库.以后博客中用到的Image,大部分都会用到这几个基础的Image,构建一个简单的物联 ...