C++

用代码理解C++中的多态、重载和虚函数

给代码俱乐部的同学写了一部分简单的C++教程,顺便发上来分享出来。 #include <iostream> #include <string> using namespace std; /* 多态,重载与虚函数  多态实际上是相同的类在处于不同身份时的不同表现。 重载、虚函数等等概念与其息息相关。 虚函数是指在方法前加入virtual关键字以消除类的多态性质。↑这些东西第一遍看不要求完全理解,看完示例后回头再看一遍定义会有更深的理解。 */ class People{ public: string Something_Common();     //使用平常的函数 virtual string Something_Virtual();  //使用虚函数 }; class Engineer : public People{ public: string Something_Common();    //覆盖原函数。 string Something_Virtual();    //重载原函数。 }; /* 一般我们把复写父类中的普通函数称为覆盖,如复写虚函数称为重…

Web

快速部署phpmyadmin

嘛还是为了快速部署什么的,这里总结一下。毕竟打ln -s命令太麻烦了对吧QAQ 首先 sudo apt install phpmyadmin 安装完成后还需要将配置文件软链接入apache2的sites站点文件夹中已应用。 sudo ln -s /etc/phpmyadmin/apache.conf /etc/apache2/sites-enabled/phpmyadmin.conf 之后使用 sudo service apache2 restart 重启服务器即可通过 http://你的域名.com/phpmyadmin 访问

Apache

解决Apache2对中文的支持问题

因为Apache2是为英语世界设计,所以对中文的考虑不够全面。在这里总结一下有关中文的问题。 环境Ubuntu 16.04+Apache2.4。在windows下一般不会有相关问题。 1、目录中文路径问题 Apache2对部署在中文目录下的网页有时候会有打不开的问题。如果想要解决这个问题,其实也并不难。 这种问题多是因为配置文件保存成了ANSI编码,由于不是UTF-8编码,无法让Apache2找到真正的路径。 因此,将Apache2目录下的相关配置按照UTF-8编码重新存储即可。 2、网页路由含中文问题 网页无法访问的核心原因依然与编码有关。 Apache2读入的编码与linux默认编码不一致是造成问题的根源所在。 这也好解决。我们可以使用一个日本人开发的插件mod-encoding。 想要安装这个插件,只需要执行 apt-get install libapache2-mod-encoding 即可。

Apache

从零开始部署LAMP环境

系统环境为Ubuntu0.16.04-0.17.04 最近需要大规模配置Linux的LAMP环境,但是有一阵没做了,因为php与apache的对接忘装浪费了不少时间,干脆做个总结。 STEP ZERO:更新apt列表 sudo apt update STEP ONE:安装apache sudo apt install apache2 安装完成后,访问域名/IP就会看到Apache经典的的默认测试界面“It works!” 这说明我们成功安装好apache了。 STEP TWO:安装php7 sudo apt install php7.0 输入如下版本命令,即可检测安装是否成功 php7.0 -v PHP 7.0.8-0ubuntu0.16.04.3 (cli) ( NTS ) Copyright (c) 1997-2016 The PHP Group Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies with Zend OPcache v7.0.8-0ubuntu0.16.04.3, Copyright (c) …

Lavarel

总结移植lavarel项目会出现的坑

大概是被坑了一个多小时吧。。。稍微总结一下提醒一下大家也以免自己再度中枪…Orz Lavarel项目的报错有的时候和真正的错音驴唇不对马嘴。所以当项目出现问题注意一下几点: 1、vendor文件夹是否缺失 因为这个文件夹lavarel项目一般不会进行改动,本身又大的要命,所以很多自动生成的.gitignore会把这个文件夹带上……嗯就是这么任性Orz 一般这种情况,因为依赖项的缺失,我们都会遇到php的报错,也就是说会出现有php特点的橙色报警框,希望能够方便大家区分。 至于解决方案。。从网上找到相应版本的vendor文件夹拷贝过来即可。 2、.env文件是否已经创建/正常 由于环境、保密等诸多原因,一般.env文件是不上传本地的.env的。但是缺少.env文件一定会影响Lavarel的运行。一般的项目会提供.env.example,删去example并更改APP_KEY即可。 APP_KEY是必填项,有.env也要检查哦。不好好检查一样无限报错的( 不过呢这玩意对长度有严格要求,建议大家采用自动生成的方法 到根目录下执行php artisan key:generate(命…

Apache

apache2.4.7多站点设置总结

施工ing… apache2设置文件一般在etc/apache2(linux)目录下。 文件夹中的apache2.conf文件是apache2的总配置文件。该文件末尾会引用其它配置文件。该文件中可以做一些全局设定。 在apache2目录下的ports.conf一般记录监听的端口等信息。 在apache2目录中有很多以A-B命名的文件夹。 A中有conf/mods/sites几两项,B中有enabled/available两项。 conf:一般存放测试 下面总结一些常用的命令(语法)

Web

wordpress中文标题帖子无法访问问题的解决方案

wordpress版本:4.6 wordpress对于中文固定链接的支持天生捉急,一遇到中文就返回404,真是让人Orz。 这个问题的成因应该是与wordpress设计时没有考虑中文编码有很大的关系。具体原理可能是后端因为没有设定utf-8编码所以无法索引相应的文件。 如果希望解决这个问题,这里有三个方案: 最简单的解决方案是进入管理界面后(wordpress网址后加/wp-admin/),在左侧的【设置】→【固定链接】中将网址改为与标题无关的选项(比如第一项“朴素”,不过第一项是动态链接,推荐使用第四项(数字型),对seo友好些)即可。嗯,简单粗暴是吧。 不过这样的网址挺不美观的(虽然短,但是一点都不优雅不是么! 如果强迫症的话可以试下下面的方案。 修改网页源码: 既然祸从转码出,那就应从转码解决。 我们自己为程序添加一个转码机制。 修改/wp-includes/class-wp.php文件中第178行: pathinfo = isset( _SERVER[‘PATH_INFO’] ) ? $_SERVER[‘PATH_INFO’] :…