刚去台湾参了个会,就听说自由行受限了

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/iamsujie/article/details/97998873

不知道大家有没有看到新闻,说


8月1日起47城大陆居民赴台个人游试点暂停


刚好前几天去了一趟台北,就势聊聊。

缘起是极客邦组织的一个技术类大会台北站,叫我去讲讲产品创新的话题,因为——


台湾早期是制造业起家,代工行业兴盛,学校教育与职场都教会大家要专注于自己的技能上,然后与其他人分工合作,结果培养了许多很会解决问题的「专家」,他们必须要在命题明确的状况下才知道怎么做事,台湾人具有解决问题的技艺,但对于相对模糊的问题却缺乏探索能力,这是台湾目前的主要困境。


6月开始办签证,中间还有个小插曲,本来是要求做商务签,这样比较稳妥,但流程非常麻烦,我因为想带着家人一起去几天,索性就一起办了旅游签,开始的说法是这样也没问题。

后来不知怎么回事(有可能是因为有政治人物也出席大会,或者就是因为关系变紧张了),结果旅游签的我,被告知没法做大会公开分享了,后来就只参加了一些餐会和私下交流,问起其他嘉宾,发现有几位也是很迂回,通过香港入境台北……


640?wx_fmt=jpeg

640?wx_fmt=jpeg


说回台湾业界,交流下来发现他们引以为傲的公司还是鸿海、台积电这样的制造企业,其实远在1992年,宏碁的施振荣先生就提出了微笑曲线,如下图。


640?wx_fmt=jpeg


快30年过去,还是没能突破,其中原因我不敢妄断,只说几个那些天看来听来的碎片。


  • Uber一直不被政策认可,台湾的出租车司机,到今天还是非常不错的职业;

  • 大学毕业生,最好的都去硅谷,次一点的也想去深圳之类,愿意留在台湾的越来越少了;

  • 在台湾制造巨头待了20多年的嘉宾,被问起有没有猎头挖他,无奈的回答——在台湾,我还能去哪里

  • 创业公司的基本套路,是学习大陆和美国的产品,然后本土复制,有一个时间滞后,路上能看到共享单车,只不过,这里是个只有2k多万人口的市场,只相当于北京市;

  • 对产品经理的概念,大约相当于大陆8年前左右,为数不多的科技类创业公司开始设置这个岗位,没资料可看,基本在看硅谷和大陆,让我惊奇的是,居然有一位朋友拿出了以下这本。


640?wx_fmt=jpeg


这个封面清奇的古董为《人人》最早版本的繁体版,估计没人见过……


一共在台北待了4天,一方面参加了一些商务活动,另一方面包子还小也不方便玩(室内如故宫博物院啥的他没兴趣,逛一会儿就开始闹…… 室外如中正纪念堂啥的又太晒太热),所以基本就简单走了走,就当踩点了,以后再来,希望自由行早日开放吧。


放几张随手拍结束。

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg


__________

苏杰(iamsujie),前阿里产品经理,写过《人人都是产品经理》等三本书,现在做创业者服务,良仓孵化器创始合伙人,也是产品创新独立顾问。

展开阅读全文

main函数行参的疑惑?

03-23

#include rn#include rn#include rn#include rnrnrn/*文件加密模块*/rnint dofile (char *in_fname,char *pwd,char *out_file)rnrnrn FILE *fp1,*fp2; /*定义文件指针*/rn register char ch; /*寄存器变量ch*/rn int j=0;rn int j0=0;rn fp1=fopen(in_fname,"rb");/*读取待加密文件*/rn if(fp1==NULL) /*判断文件是否读取成功*/rn rn printf("cannot open in-file.\n");rn exit(1); /*如果不能打开要加密的文件,便退出程序*/rn rn fp2=fopen(out_file,"wb");/*创建新文件*/rn if(fp2==NULL) /*判断文件是否创建成功*/rn rn printf("cannot open or create out-file.\n");rn exit(1); /*如果不能建立加密后的文件,便退出*/rn rn while (pwd[++j0]);rn ch=fgetc(fp1);rnrn /*加密算法开始*/rn while(!feof(fp1))rn rn fputc(ch^pwd[j>=j0?j=0:j++],fp2);/*异或后写入fp2文件*/rn ch=fgetc(fp1);rn rn fclose (fp1); /*关闭源文件*/rn fclose(fp2); /*关闭目标文件*/rn return (0);rnrnrnrnint main (int argc,char *argv[])/*定义main()函数的命令行参数*/rnrnrn char in_fname[30]; /*存放源文件名数组*/rn char out_fname[30]; /*存放目标文件名数组*/rn char pwd[8]; /*用来保存密码*/rn if (argc!=4)rn /*容错处理*/rn printf("\nIn-fname:\n");rn gets(in_fname); /*源文件名*/rn printf("Password:\n");rn gets(pwd); /*给定密码*/rn printf("Out-file:\n");rn gets(out_fname); /*目标文件名*/rn dofile(in_fname,pwd,out_fname);/*进入加密子函数*/rn rn elsern /*如果命令行参数正确,便直接运行程序*/rn strcpy(in_fname,argv[1]);rn strcpy(pwd,argv[2]);rn strcpy(out_fname,argv[3]);rn dofile(in_fname,pwd,out_fname);rn rn getch ();rn return (0);rnrnZ rnrn上面代码中,main函数的参数代表什么?main并没有被调用? 论坛

求教。。。为什么传个参指针指向的内容就变了。。

12-31

传参前的 root rn[img=http://img.my.csdn.net/uploads/201212/31/1356953022_5172.jpg][/img]rnrn传参后的 rootrn[img=http://img.my.csdn.net/uploads/201212/31/1356953041_5166.jpg][/img]rnrn函数还没操作为什么root的内容就变了。。 rnrn求教~ 谢谢。。rnrn代码如下:rnrn//Ex3.cpprn[code=c]rn#include"HuffmanTree.h"rn#includern#include rn#includern#includernusing namespace std;rnrnint main()rnrn HuffmanTree HT;rn string test="abbcccdddd";rn HT.encodeoutput(test);rn HT.decodeoutput();rn system("pause");rn return 0;rn[/code]rnrn//HuffmanTree.hrn[code=c]rn#includern#includern#include"MinHeap.h"rnrnstruct HuffmanNodernrn float data;rn int mark;rn HuffmanNode* leftChild,* rightChild,* parent;rn HuffmanNode():leftChild(NULL),rightChild(NULL),parent(NULL),mark(-1)rnrn HuffmanNode(float elem,HuffmanNode* left=NULL,HuffmanNode* right=NULL,HuffmanNode* pr=NULL,int i=-1)rn : data(elem),leftChild(left),rightChild(right),parent(pr),mark(i)rnrn bool operator<=(HuffmanNode& R)return data<=R.data;rn bool operator>(HuffmanNode& R)return data>R.data;rn;rnrnstruct CharNodernrn char letter;rn int counter;rn string code;rn CharNode():letter('\0'),counter(0),code("")rn CharNode(char c,int i,string s):letter(c),counter(i),code(s)rn;rnrnrnclass HuffmanTreernrnpublic:rn HuffmanTree(int n=32);rn ~HuffmanTree()deleteTree(root);delete []T;hp.~MinHeap();rn void encodeoutput(string s);rn void decodeoutput();rnprotected:rn int len;rn CharNode* T;rn string codestr;rn MinHeap hp;rn HuffmanNode* root; rn void PlantTree( float w[],int n);rn void decoding(string s,HuffmanNode* h,int& x);rn void encoding(string s,HuffmanNode* h);rn void deleteTree(HuffmanNode* t);rn void mergeTree(HuffmanNode& ht1,HuffmanNode& ht2,HuffmanNode* &parent);rn;rnrn[/code]rnrn//HuffmanTree.cpprn[code=c]rn#include"HuffmanTree.h"rnrnHuffmanTree::HuffmanTree(int n)rnrn T=new CharNode[n];rn for(int i=0;imark=-1;rn parent->leftChild=&ht1;rn parent->rightChild=&ht2;rn parent->data=ht1.data+ht2.data;rn ht1.parent=ht2.parent=parent;rnrnrnrnvoid HuffmanTree::deleteTree(HuffmanNode* t)rnrn if(t!=NULL)rn rn deleteTree(t->leftChild);rn deleteTree(t->rightChild);rn delete t;rn rnrn rnrnvoid HuffmanTree::encodeoutput(string s)rnrn len=s.length();rn if(len==0)rn rn cerr<<"Entering error!"<letter==s[i])rn rn (n->counter)++;rn alter=1;rn break;rn rn rn if(!alter)rn rn CharNode* m=T+point;rn m->letter=s[i];rn (m->counter)++;rn point++;rn rn rn float* w=new float[point];rn for(int k=0;kcounter;rn rn PlantTree(w,point);rn encoding(codestr,root);rn cout<<"\n\nEncoded output:\n";rn cout<leftChild!=NULL))rn rn x++;rn decoding(s,h->leftChild,x);rn rn if((s[x]=='1')&&(h->rightChild!=NULL))rn rn x++;rn decoding(s,h->rightChild,x);rn rn if((h->leftChild==NULL)&&(h->rightChild==NULL))rn rn int m=h->mark;rn CharNode* Temp=(T+m);rn char y=Temp->letter;rn cout<leftChild != NULL)rn rn encoding( s+"0", h->leftChild);rn encoding( s+"0",h->rightChild);rn rn elsern rn int m=h->mark;rn CharNode* Temp=(T+m);rn Temp->code=s;rn rn rn rnrn[/code]rnrn//MinHeap.hrn[code=c]rn#includernusing namespace std;rnrn#ifndef MINHEAP_Hrn#define MINHEAP_Hrnstatic const int DefaultSize=64;rntemplaternclass MinHeaprnrnpublic:rn MinHeap(int sz=DefaultSize);rn MinHeap(E arr[],int n);rn ~MinHeap()delete []heap;rn bool Insert(const E& x);rn bool RemoveMin(E& x);rn bool IsEmpty()constrn rn return (currentSize == maxHeapSize)?true:false;rn rn void MakeEmpty()currentSize=0;rnprivate:rn E* heap;rn int currentSize;rn int maxHeapSize;rn void siftDown(int start,int m);rn void siftUp(int start);rn;rnrntemplaternMinHeap::MinHeap(int sz)rnrn maxHeapSize=(DefaultSizernMinHeap::MinHeap(E arr[],int n)rnrn maxHeapSize=(DefaultSize=0)rn rn siftDown(currentPos,currentSize-1);rn currentPos--;rn rnrnrntemplaternvoid MinHeap::siftDown(int start,int m)rnrn int i=start,j=2*i+1;rn E temp=heap[i];rn while(j<=m)rn rn if(jheap[j+1])rn j++;rnrn if(temp<=heap[j])rn break;rn elsern rn heap[i]=heap[j];rn i=j;rn j=2*j+1;rn rn rn heap[i]=temp;rnrnrntemplaternvoid MinHeap::siftUp(int start)rnrn int j=start,i=(j-1)/2;rn E temp=heap[j];rn while(j>0)rn rn if(heap[i]<=temp)rn break;rn elsern rn heap[j]=heap[i];rn j=i;rn i=(i-1)/2;rn rn rn heap[j]=temp;rnrnrntemplaternbool MinHeap::Insert(const E& x)rnrn if(currentSize==maxHeapSize)rn rn cerr<<"Heap Full"<rnbool MinHeap::RemoveMin(E& x)rnrn if(!currentSize)rn rn cout<<"Heap empty."< 论坛

没有更多推荐了,返回首页