编辑windows\system32\drivers\etc\hosts 文件,然后加入72.14.219.190 xxx.blogspot.com ,其中xxx是你的用户名,即可访问到你自己的BlogSpot了。
你好,世界
Blogger是我所知的一個很優秀的博客平台,只是一直少有機會接觸它.最近想寫寫東西,抒發抒發感情,突然想起來Blogger,雖然我已經有了一個獨立的WordPress,但是我不想把我的生活瑣事帶到那裡,而且由於空間的原因,我一直不太敢花很多時間Wordpress上,害怕有一天,會因空間的關係所有的數據都消失.而在Blogger我不會有這個擔心,我相信Google的服務器,我相信Google會保存我的數據,即使世界末日到了也在所不惜.而在這裡我也能敞開心扉,寫我想寫的任何東西.Blogger雖然註冊已經很久很久了,但之前從沒有靜下來打量這個服務.一是很少有時間,二是還沒有養成在網上分享這種習慣.關於後一點其實我一直很後悔爲什麽沒有早一點接觸網絡,更早一點看清世界.以前在這個域名下寫的很多東西都給我删了,這個是我的第一篇.從今天開始將是一個新的世界,個人的世界.所以我用了程序員世界觀中的"世界,你好"來作為開博第一篇的題目.
聯繫我的興趣,結合我的生活經歷,我覺得這裡的文字可能與科技,Google,生活哲學等等有關,當然這個也許會變的.這裡我也可能就只寫些網絡的小技巧,電腦小技巧,軟件的介紹等等,網上的我自己體驗過的,或者別人推薦的一些小竅門.
好了這個大概就是我想說的了吧.作為開篇吧.
继承与多态
在C++中继承与多态是两个很重要的概念,而这两个概念也是面向对象很重要的概念,所以有必要对这两个概念有一个很清楚的理解.继承是面向对象中,能从基类继承派生出很多的类,这种继承自父类的机制就叫做继承.
多态(Polymorphism)按字面的意思就是“多种状态”。在面向对象语言中,接口的多种不同的实现方式即为多态。引用Charlie Calverts对多态的描述——多态性是允许你将父对象设置成为和一个或更多的他的子对象相等的技术,赋值之后,父对象就可以根据当前赋值给它的子对象的特性以不同的方式运作(摘自“Delphi4 编程技术内幕”)。简单的说,就是一句话:允许将子类类型的指针赋值给父类类型的指针。多态性在Object Pascal和C++中都是通过虚函数(Virtual Function) 实现的。
用一个例子展示继承与多态:
形状类的定义:
#ifndef W1_EXAMPLE1_SHAPE_H
#define W1_EXAMPLE1_SHAPE_H
////////////////////
// 继承 和 多态 实例
////////////////////
//形状类
class CShape
{
public:
CShape();
~CShape();
public:
virtual float GetArea(); //基类中定义的虚函数
void GetType();
void GetCommon(); //公共的属性
};
//三角形
class CTriangle : public CShape //继承
{
public:
CTriangle(float h, float w);
~CTriangle();
public:
float GetArea(); //重载基类的虚函数,实现多态
void GetType();
private: //封装的信息隐藏
float H,W;
};
//圆形
class CCircle: public CShape
{
public:
CCircle(float r);
~CCircle();
float GetArea();
void GetType();
private:
float R;
};
#endif
形状类的实现
#include "StdAfx.h"
#include "stdio.h"
#include "Shape.h"
///////////////////////////
// CShape
/////////////////////////
CShape::CShape()
{
}
CShape::~CShape()
{
}
float CShape::GetArea()
{
printf("area=0.0\n");
return 0.0;
}
void CShape::GetType()
{
printf("This is a Shape\n");
}
void CShape::GetCommon()
{
printf("This is a Common atribute\n");
}
////////////////////////////
// CTriangle
///////////////////////////
CTriangle::CTriangle(float h, float w)
{
H = h;
W = w;
}
CTriangle::~CTriangle()
{
}
float CTriangle::GetArea()
{
printf("area=%f\n",H*W*0.5);
return H*W*0.5;
}
void CTriangle::GetType()
{
printf("This is a Triangle\n");
}
///////////////////////////
// 圆形
///////////////////////
CCircle::CCircle(float r)
{
R = r;
}
CCircle::~CCircle()
{
}
float CCircle::GetArea()
{
printf("area=%f\n",3.14159*R*R);
return 3.14159*R*R;
}
void CCircle::GetType()
{
printf("This is a Circle\n");
}
主函数:
// W1_Example1.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include "stdlib.h"
#include "stdio.h"
#include "Shape.h"
int main(int argc, char* argv[])
{
//继承性
CShape myShape;
CTriangle myTriangle(1.5,1);
CCircle myCricle(1.5);
printf("1111--------------\n");
myShape.GetCommon();
myTriangle.GetCommon();
myCricle.GetCommon();
//多态:
//编译时多态 (针对非虚函数的重载)
//运行时多态 (针对虚函数的重载)
CShape *pShape;
CTriangle *pTriangle;
CCircle *pCricle;
printf("2222--------------\n");
pShape = &myShape;
pShape->GetType(); //基类 -> 基类 = 基类
pShape->GetArea();
pCricle = &myCricle;
pCricle->GetType(); //子类 -> 子类 = 子类
pCricle->GetArea();
printf("3333--------------\n");
//运行时多态
pShape = &myCricle; //基类 -> 子类
pShape->GetType(); //基类的GetType不是虚函数,仍调用基类方法,而非子类方法
pShape->GetArea(); //基类的GetArea 是虚函数 ,运行时多态,调用子类方法
pShape = &myTriangle;
pShape->GetType();
pShape->GetArea(); //多态
printf("4444--------------\n");
//编译时多态
pCricle = (CCircle*)&myShape; //子类 -> 基类
pTriangle = (CTriangle*)&myShape;
pCricle->GetType(); //子类重载了基类的GetType方法,
pTriangle->GetType(); //因此将基类指针强制转换为子类指针后,将调用子类重载后的方法,为编译时多态
pCricle->GetArea(); //这里需要注意 仍然是运行时的多态,调用的是基类的方法
pTriangle->GetArea(); //不常用,不需要记住
printf("--------------\n");
system("pause");
return 0;
}
源代码下载
几个C语言小练习
有一个正整数N,N可以分解成若干个正整数之和,问如何分解能使这些数的乘积最大。请编程,由键盘输入一个正整数N(N<100),将N分解成若干个正整数,输出这些数的乘积M,且要保证M是最大的。我们要编写一个函数,这个函数把一个数分为两个数之和,并且这两个数的乘积最大,这样的函数是不是很好编写,代码如下:
void f1(int a, int *x,int *y){
*x=a/2;
*y=a-*x;
}
知道为什么这样分吗,原理很简单:两个数都最大的时候,乘积才最大。也就是各取一半,如果a是奇数就让y多1。
要完成把N分为多个数,使其乘积最大,我们就先分为两个数,然后分别对这两个数进行各自进行拆分(递归调用),直到分开的两个数乘积比分前小,那就取消这次拆分。
基于以上说明,我们对f1函数进行修改,增加递归调用部分:
void f1(int n){
int x,y;
x=n/2;
y=n-x;
if (n>=x*y) printf("%d ",n);
else {f1(x);f1(y);}
}
添加计算乘积m的代码,以及主程序,完成的如下:
-----------------
int m;
void f1(int n){
int x,y;
x=n/2;
y=n-x;
if (n>=x*y) {printf("%d ",n);m*=n;}
else {f1(x);f1(y);}
}
main(){
int n;
m=1;
scanf("%d",&n);
f1(n);
printf("\n%d",m);
}
-----------------
程序在SCO UNIX上运行通过,结果如下:
-----------------
$ cc a.c
$ a.out
9
4 2 3
24
$ a.out
10
2 3 2 3
36
$ a.out
12
3 3 3 3
81
$
-----------------
求神秘数
取任何一个4位数(4个数字均为同一个数字的例外),将组
成该数的4个数字重新组合成可能的最大数和可能的最小数,再将两者的
差求出来;对此差值重复同样的过程(例如:开始时取数8028,最大的
重新组合数为8820,最小的为0288,二者的差8532。重复上述过程得
出8532-2358=6174),最后总是达到一个神秘的数,请编程求出这
个神秘的数。
#include<stdio.h>
int sm(int);
void main()
{
int a,s;
printf("输入各个位数不完全相等的四位数a:\n");
scanf("%d",&a);
s=sm(a) ;
printf("神秘数是\n%d\n",s);
}
int sm(int a)
{
int b,c,d,e;
int b2,c2;
b=a%10;b2=a/10;
c=b2%10;c2=b2/10;
d=c2%10;
e=c2/10;
int f[4]={e,d,c,b};
for(int j=0;j<3 ;j++)
for(int i=0;i<3-j;i++)
if(f[i]<f[i+1])
{
int t=f[i];
f[i]=f[i+1];
f[i+1]=t;
}
int max=f[0]*1000+f[1]*100+f[2]*10+f[3];
int min=f[3]*1000+f[2]*100+f[1]*10+f[0];
int s=max-min;
if(s==a) return a;
a=s;
return sm(a) ;
}
求回文数
一个数如果从左往右读和从右往左读数字是相同的,则称这个
数为回文数,比如898,1221等等。求既是回文数又是质数的五位十进制
数有多少个?
#include<stdio.h>
#include<math.h>
int IsOfTwo (int x) //质数
{
int flag=1;
int i;
for(i=2;i<=( (int) sqrt ( x )+1 ); i++)
{
if((x%i)==0)
{
flag=0;
break;
}
}
return(flag);
}
int IsOfOne(int x) //回文数
{
int flag=0;
if((x%10)==(x/10000))
if(((x%100)/10)==((x%10000)/1000))
flag=1;
return(flag);
}
main()
{
int num;
int counter=0;
for(num=10000;num<=99999;num++)
{
if(IsOfTwo(num)&&IsOfOne(num))
{
counter++;
}
}
printf("%d\n",counter);
}
求ABC
将英语单词变成负数
统计类别的个数
用数据说话,看Google怎样被陷害(转)
近日,央视爆出谷歌搜索出现大量黄色词条的信息。一个引起舆论强烈反响的例子是,在谷歌搜索“儿子”竟然也能搜索到黄色词条。那么,事情是怎么发生的呢?下面我们来看谷歌是如何被陷害的:众所周知,谷歌关键词提醒是计算机自动摘取最近最流行的关键词来生成的。于是某些人利用这一点,大量在谷歌上搜索黄色词汇,陷害了谷歌。
在谷歌搜索趋势图,Google Insights for Search,以及一些第三方的统计数据中,可以看到:
在央视曝光谷歌之前7天:
1.有人故意在谷歌大量搜索黄色词汇,使单日黄色词汇搜索量同比猛增 5950% ,单月
搜索总量与上月相比增幅达数千倍
2.这些搜索量100%来自北京
3.这些搜索量几乎呈线性急剧上升,理论上这些瞬时搜索量应该服从正态分布并是突发性
的,换句话说,这是有人故意为之。
(全年统计)
(本月统计)
为做对比,说明搜索引擎的统计应该是什么样子,我来附上一张对关键词“天气预报”的搜索统计图表,从图中我们可以看到,全年搜索量应该大致呈均匀分布,考虑到搜索引擎的普及使用,会有一个逐渐升高的趋势,但绝不可能出现在某个月份呈直线上升的情况。
那么,还有一种可能,是不是北京的人们在6月份,由于夏天到来,荷尔蒙分泌过多,导致对“儿子母亲不正当关系”这样的黄色词汇搜索过多呢?我们且来看这张对关键词“日本女优”的搜索统计图表,
可以看到,对关键词“日本女优”的搜索量全年大致呈均匀分布,甚至在近期有下降的趋势。那么,这种近期全民荷尔蒙分泌过多的情况也应该被排除了。并不是说对 所有黄色信息都有大量的搜索需求。搜索数量呈急剧上升的关键词,只局限在媒体大书特书的几个词汇之中,特别要注意的是其急剧上升阶段和峰值都在媒体报道之 前,显然,这不是自然的结果,那么,答案是什么呢?是谁让谷歌如此低俗?
以上内容感谢 http://goo.gl/f0i6z 保存
原文内容 http://blog.sina.com.cn/s/blog_60676a3f0100e0xk.html 已被删除
http://www.javaeye.com/news/8465-data-words-look-at-how-google-was-set-up-carried-sina 已被删除
更多内容:http://wordpress.lixiaolai.com/archives/6835.html
开源
Q:什么是开源?A:开源,意为开放源代码,由Bruce Perens(曾是Debian的创始人之一)定义如下:
1)自由再散布(Free Distribution):获得源代码的人可自由再将此源代码散布。
2)源代码(Source Code):程式的可执行档在散布时,必需随附完整源代码或是可让人方便的事后取得源代码。
3)衍生著作(Derived Works):让人可依此源代码修改后,在依照同一授权条款的情形下再散布。
4)原创作者程式源代码的完整性(Integrity of The Author’s Source Code):意即修改后的版本,需以不同的版本号码以与原始的程式码做分别,保障原始的程式码完整性。
5)不得对任何人或团体有差别待遇(No Discrimination Against Persons or Groups):开放源代码软件不得因性别、团体、国家、族群等设定限制,但若是因为法律规定的情形则为例外(如:美国政府限制高加密软件的出口)。
6)对程式在任何领域内的利用不得有差别待遇(No Discrimination Against Fields of Endeavor):意即不得限制商业使用。
7)散布授权条款(Distribution of License):若软件再散布,必需以同一条款散布之。
8)授权条款不得专属于特定产品(License Must Not Be Specific to a Product):若多个程式组合成一套软件,则当某一开放源代码的程式单独散布时,也必需要符合开放源代码的条件。
9)授权条款不得限制其他软件(License Must Not Restrict Other Software):当某一开放源代码软件与其他非开放源代码软件一起散布时(例如放在同一光碟片),不得限制其他软件的授权条件也要遵照开放源代码的授权。
10)授权条款必须技术中立(License Must Be Technology-Neutral):意即授权条款不得限制为电子格式才有效,若是纸本的授权条款也应视为有效。
中国为什么不能成为完全的市场经济国家?
中国为什么不能成为完全的市场经济国家?早在2007年,中国和欧盟在芬兰的赫尔辛基举行双边会谈,在会谈结束后,欧盟主席巴罗佐对记者表示:“在确定反倾销价格和成本时,这些因素都是相关的。一旦中国达到了这些标准,我们一天也不会多等。” 巴罗佐所谈的标准就是中国要求欧盟承认中国完全的市场经济国家而欧盟提出的要求中国达到的标准。
长期以来,中国一直要求欧盟承认其完全市场经济地位,但这一要求在峰会上仍被忽视。那欧盟提出的到底是什么标准呢?共有四条:其一是政府的影响力;其二是会计准则,其三破产法,其四金融服务领域的改革。巴罗佐所提的“四条标准”,与美国承认中国完全的市场经济国家所提的“标准”虽不完全相同,但基本精神是类似的,这就是要求中国经济的进一步规范化和自由化。在这四条标准中,会计准则和破产法属于真正的“技术指标”,是刚性的,我们现在正在努力实现。但另两个问题却是软性的,尤其是“政府的影响力”问题,要达到欧盟心目中的“标准”恐怕很难。因为这不是一个能不能做到的问题,而是一个愿不愿意做的问题。
“政府的影响力”标准就是要求政府减少对经济的影响力,就是让经济在公平原则的基础上自由的发展。其实这是符合经济规律,并有利于经济在健康的轨道上发展的措施。既然是好的,那我们中国为什么不愿意去做呢?
经济学家吴敬琏老先生早前在《财经》杂志撰文指出:中国自改革以来,在政府仍然在资源配置中居于主导地位条件下形成的变通性制度安排,对企业家才能的配置产生了双重影响;它即使企业家能够发挥自己的才能,从事生产性的创新活动,推动了市场形成和经济成长,同时又是寻租腐败等非生产性活动泛滥的根源所在。我在一次西部开发研讨会上同吴老先生有过交往,深刻地感悟到他对中国经济的担忧。在中国做企业,若不跟当地政府搞好关系,那什么也做不成,这已是众所周知的事,就连那些外资企业都渐渐入乡随俗,知道了跟政府“公关”的重要性。在中国,企业家把企业做的再大,你也不是真正的“老大”,真正的“老大”只能是政府。这是吴老先生说的“企业家才能的错配”,同时又造成了太多的寻租腐败的机会。而这一切,皆因为中国在“引进市场的同时,仍然在很大程度上保留了政府的主导作用”,“政府依然掌握着大量资源的分配权”,企业家不得不为获得这类资源进行非市场的激烈竞争。
其实,中国不乏懂得市场经济的学者和有识之士,但他们的意见和建议为什么得不到真正的重视和采纳呢?政府为什么就不愿意退出这个已经抹了自己一身屎的“资源配置权”呢?我们的政府为什么要把一切都置于自己的严格控制之下呢?要把这些说明白,恐怕就要从政治体制上去找答案了。
—— 原载: 共识网
说说blogger.com的ftp发布
1.为什么写blogger.com的ftp发布这样一片日志?使用IPv6 DNS解析IPv6域名(不必修改hosts文件)
很多网站,例如Google,都是IPv4和IPv6双线接入的,www.google.com解析对应许多个IP,其中IPv4和IPv6都有。在默认情况下,DNS服务器会返回多个IP地址,而本地机器则是根据各个地址的响应速度自动选择主机。通常,人们会采用修改系统目录下的hosts文件,将Google的地址指定为IPv6的那个地址,使本地机器不去访问DNS服务器,而直接从本地获取IP地址进行访问。
其实,可以采用更简洁的方法,而不必修改hosts文件。
目前,一些公益组织已经提供纯IPv6协议的DNS服务器,设置IPv6的服务器,可以返回IPv6的地址(同时也返回IPv4的地址)。(注意:由于目前GFW并没有对IPv6的DNS进行封锁,用户可以通过该种方法突破一些GFW不允许访问的站点。)
设置IPv6 DNS地址为:2001:470:20::2 ,就可以轻松访问所有IPv6网站,当然前提是解析出来的所有地址中IPv6的地址响应速度最快,一个极端的解决方案是关闭IPv4协议,不过貌似很多人不喜欢没有IPv4网络的时代,至少目前是这样的。
设置完成之后,Google几乎所有的产品都可以通过IPv6访问!Cool!
Enjoy the new (future) Internet Protocol!
以上参考<http://blog.csdn.net/wangjingfei/article/details/5396845>
2012/11/2更新
Google Public DNS IP addresses
The Google Public DNS IP addresses (IPv4) are as follows:
8.8.8.8
8.8.4.4
The Google Public DNS IPv6 addresses are as follows:
2001:4860:4860::8888
2001:4860:4860::8844
来自Google
ge-diao-bu-gao-zen-mei-ban
格调不高怎么办(转载) (2011-11-02 18:42:22)
韩寒
自从《脱节的国度》不见了以后,一直都未写东西。因为我着实是一个写的不勤奋的人,每次写完,隔日不见,真的扫兴,而且国家部门繁多,就算宣传部门和新闻出版部门觉得没问题,所有配备了帕萨特以上公务车的部门也都可以一个电话把你文章删了。其中最仁慈的反而是某地方的公安部门,08年有一天我写了一篇文章,事隔一年多,他们删除了这篇文章。难怪大家都说公安出警慢。的确。删文章的地方太多了,就不知道该怎么下笔了。
从事了这个工作大概十三年,我发现文化工作者在地位上真是一个特别下三滥特别窝囊废的工种。这个工种所出产的作品由于受到诸多的限制,所以肯定没有那么奇特的经历更加精彩。我来说一些小故事。
在中国的出版行业,其实是没有官方的审查的。大家都应该觉得很奇怪,因为这违背了常识。但是可以告诉大家,出版行业的确没有审查。这是因为中国每年要出几十万本书,实在审查不过来。而且我相信管那些读书人的同志大部分都不爱读书,所以图书审查其实一直由出版社独立完成。
但是这样一来岂不是百花齐放了。当然不是。比较专业的说,这叫事后审查制。事后审查制其实要比事前审查制更加紧,杀伤力和副作用更大。这点用过事后避孕药的朋友肯定深有感触。
只有拥有书号才能出版,只有出版社才能发书号,只有官方才能有出版社,所以从源头上,自由的出版其实是不可能的。而由于大量的国有出版社能力不济,很多民营文化公司开始运营图书出版。出版的方式就是合作出版或者从出版社那里购买一些书号。但这依然不能改变出版现状,因为出版社依然是终审方。而一本书如果不让出版,在以往理由是反革命,后来反革命这个词不太出现了,因为反革命既然是不好的,那岂不成了鼓励革命。而官方认为,革命工作已经完成,所以既不能反革命,也不能革命,群众最好的生活方式就是呆着。于是现在不能出版的理由就是格调不高。我第一本书《三重门》就是因为格调不高,迟迟不能出版。格调不高是致命的,因为文笔太差可以改,逻辑不清可以理,唯独格调不高让人头疼,你也不知道怎么能让自己的格调提高一点。你问他什么是格调,他也不知道。一直到现在,我才明白了,格调其实就是割掉的意思,格调不高就是割掉的不够高,你以为象征性的把脚底板的老茧磨磨平就能从事文化行业了么,你要割掉的够高。凡是保留腰以下部分的,从事文化行业明显还是会显得雄性气息太浓厚。
我是一直饱受审查之苦的。但在格调稍微高了一点以后,我还是侥幸可以出版图书,并且因为图书的畅销,有的时候还稍微可以在小问题和出版方争取格调稍微降低一点。每次写作前,我都要进行一次自我审查。也许很多没有从事过这个行业的朋友会觉得我们这样做特别怂,不够MAN。比如当年《独唱团》出版前遇到很多的困难,一些朋友看不下去了,说你太娘们了,这要是我,不要书号了,直接拿到印刷厂去,印个几十万本,这就开卖了。我欣赏这位朋友的没有格调,但他们不知道印刷厂只有收到了出版社开具的委托印刷单以后才能开机印刷,否则你非但印不了一本,人家就报警了。其次就算你爹开了一个印刷厂,你印刷出了几十万本,你没有书号,没有一家书店和报刊亭是会进你的货的。连卖盗版的都不敢帮你卖。也许这位朋友会说,那我就放到网上去,在淘宝卖。那我告诉你,在淘宝销售图书,首先你得拥有资质,其次你不能随手拍一个封面就上架了,你必须输入书号,当系统把你输入的书号和书名对应起来,你才能上架。
所以一直到今天,所有的文化人都在进行着痛苦的自我审查。那我们能否指望出版社突然格调降低呢,这当然也不可能,一旦出版社有格调降低的迹象,由于都是国有单位,官方再指派一个社长过去就是。而那些格调降低的同志就可以去妇联残联养养老。事后审查制最恐怖一环在于惩罚,就是我不管你,但你要是出版了什么幺蛾子,我罚死你。轻则撤职撤社,重则投进大牢,所以你看着办吧。
至于我本人,虽然每一篇文章都经过了自我审查和阉割,但有的时候难免也会出现阉割的形状不符合认证的情况。这个和每个出版社的紧张程度有关系。比如我最新的小说就被枪毙了,因为新小说里的主人公姓胡,虽然我才写了五千字,但是出版社认为这必然是有政治隐喻的。当我明白了要避讳的时候再改姓已经晚了。但避讳要记住勿忘前朝,我还有一篇小说中,因为出现了“江河湖海”四个字,被更直接的枪毙了。如果说之前我犯了错误的话,那这一个就是两倍的错误。连我都不能原谅我自己,明知道若不起,怎么连躲都没躲利索呢。
我不知道一个文化人提笔就哆嗦的国家怎么能建设成文化强国,一个因为要避讳常委所以在谷歌上搜索不到李白的国家怎么能建设成文化强国。我不知道该怎么一个文化体制改革法,反正我只有一个愿望,就是韩正老师别再升官了,要不然我就搜不到我了。
