C++日常笔记(6)
来源:互联网 发布:淘宝0秒付款 编辑:程序博客网 时间:2024/06/06 03:24
1.委托构造函数
Class中的构造函数可以使用自身类中的其它构造函数来完成其构造功能,比如:
#include <iostream>using namespace std;class A{ int data;public: A() : A(2){cout<<1<<endl;} A(int data):data(data){cout<<2<<endl;}};int main(){ A a; return 0;}code output:21
从结果显然可以看出,A()委托A(int data)进行构造,A(int data)函数执行完毕后,才执行A()函数体中的内容,此外,委托构造函数不能再利用初始化器初始化其他数据成员,注意不能递归委托。
2.std::endl and std::flush and std::internal
std::endl(std::cout) == std::cout<<std::endl
std::endl is redundant when used with std::cout because any input from std::cin, or output to std::cerr, program termination forces a call to std::cout.flush()
关于std::internal:
#include <iostream>#include <iomanip>#include <locale>int main(){ std::cout << "Left fill:\n" << std::left << std::setfill('*') << std::setw(12) << -1.23 << '\n' << std::setw(12) << std::hex << std::showbase << 42 << '\n'; std::cout << "Internal fill:\n" << std::internal << std::setw(12) << -1.23 << '\n' << std::setw(12) << 42 << '\n'; std::cout << "Right fill:\n" << std::right << std::setw(12) << -1.23 << '\n' << std::setw(12) << 42 << '\n'; std::cout << "Right fill:\n" << std::right<<std::internal << std::setw(12) << -1.23 << '\n' << std::setw(12) << 42 << '\n';}code output:Left fill:-1.23*******0x2a********Internal fill:-*******1.230x********2aRight fill:*******-1.23********0x2a-*******1.230x********2aProgram ended with exit code: 0
3.Class
类中的成函数可以仅声明而不定义,这是合法行为,但是一旦调用该成员函数,则会出错。
static数据成员可以作为默认实参,且其类型可以为不完全类型,即下列代码合法:
class A { static A data; };
此外,一个类不能派生自己本身
资料来源:
http://en.cppreference.com/w/
阅读全文
0 0
- Linux C日常笔记
- C++日常笔记(6)
- 日常问题笔记(1-6)
- 日常笔记:Python(1)
- 日常错误笔记(PHP)
- C++ 日常笔记(2)
- C++日常笔记(3)
- C++日常笔记(4)
- C++ 日常笔记(5)
- 日常笔记----Junit(一)
- java日常笔记(一)
- c日常
- 日常笔记
- 日常笔记
- 日常笔记
- 日常笔记
- 日常笔记
- 日常笔记
- 决策树学习
- listview多条目加载
- QGroundControl增加菜单栏新建窗口
- mysql远程连接 Host * is not allowed to connect to this MySQL server
- securecrt 8之后版本, new host key 取消显示
- C++日常笔记(6)
- linux下的top命令参数说明 (virt,res,shr,data 的意义)
- Git提交空目录
- ProtoBuf 与 gRPC 你需要知道的知识
- PHP GD库相关图像生成和处理函数
- 原生JS自定义滚动条
- Codeforces Round #173 (Div. 2) E. Sausage Maximization —— Trie树 + 前缀和
- Java序列化与反序列化
- 第一章:tornado入门环境搭建