语法

Android

kotlin编写Android的坑总结

Kotlin中的静态字段 Java中的public static在拷贝到Kotlin项目中会自动转换为val。但是在调用时EXTRA_MESSAGE会标红无法检测,而添加Static字段也会报错。 原因是Kotlin中没有static关键字。 Java中的static应该用companion(类伴生对象)替代。 谷歌Android官方示例项目中的EXTRA_MESSAGE应该改为如下: package com.example.myfirstapp import android.support.v7.app.AppCompatActivity import android.os.Bundle import android.view.View import java.io.Console import android.provider.AlarmClock.EXTRA_MESSAGE import android.widget.EditText import android.content.Intent class MainActivity : AppCompatActivity() { …

python

anaconda与zsh不兼容的解决方案小记

前情 蓝瘦…… 尝试在OSX上安装anaconda的tensorflow环境,怎么样都报错。 很久都没有解决。 一直以为是自己安装的问题。 就放着不管了。 后来尝试重新捡起anaconda的时候, 又遇到了如下错误: Last login: Thu Sep 6 12:16:13 on ttys001 /Users/remini/.anaconda/navigator/a.tool ; exit; remini@biduandeMacBook-Pro  ~  /Users/remini/.anaconda/navigator/a.tool ; exit; /Users/remini/.anaconda/navigator/a.tool: line 1: syntax error near unexpected token `(‘ /Users/remini/.anaconda/navigator/a.tool: line 1: `bash –init-file <(echo “source activate /Users/remini/anaconda3/envs/tenso…

Linux

使用python + virtualenv的小记

简介 virtualenv是一种帮忙给每个项目一个单独的python环境的有用工具,极大解决了同一服务器的不同项目的冲突问题,相对于微服务的docker,是一种轻量级解决方案。 安装virtualenv sudo pip install virtualenv 创建virtualenv环境 一般virtualenv环境在项目下一个文件夹内,一般名为venv或env(前者多些)。建议在.gitignore中将其忽略。 virtualenv venv venv即为环境文件夹名。 创建的同时也可以指定所创建python的版本 virtualenv venv –python=python3.6 使用虚拟环境 开启虚拟环境为: source venv/bin/activate 退出虚拟环境使用如下指令即可: deactivate 这两个指令的本质是更改当前shell环境的python等的$path路径为目录下自带的python,来达到切换隔离的效果。使用python –version即可验证版本 pip在其中也是可以正常使用的: pip install -r requirements.txt

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();    //重载原函数。 }; /* 一般我们把复写父类中的普通函数称为覆盖,如复写虚函数称为重…