cocos2d-x跨android、ios平台开发入门
本文由麦可网收集整理,转载请注明出处。
, Cocos2d-x跨Android&iOS平台开发入门
Cocos2D是一个非常棒而且非常容易使用的游戏框架,但是,由于它是基于objc语言的,所以你只能使用它来开发ios和mac下面的游戏。 假如你可以使用和cocos2d相似的api来开发android上面的游戏,那岂不是更爽,这样,你就可以毫不费劲地扩大你的游戏的市场份额(android的用户数量巨大啊~)
好吧,确实存在这么一个游戏框架,她就是cocos2d-x~cocos2d-x基于c++把cocos2d的api重新移植了一遍,,除了一些语法细节上面的差异之外,你可以使用几乎一样的api来编写游戏。正是由于它是c++写的,所以可以跨多个平台,从ios到android、windows、再到linux、bada等~ 在这篇教程里面,你将学习到,如何使用cocos2d-x和c++来编写一个能够同时在ios和android设备上面跑的“Hello World”程序。 而且,过两天,我会再出一篇教程,向大家展示一个具体的游戏例子—一个跨平台的太空射击游戏~ 好了,带上你的iPhone和Android设备,让我们开始吧~ Hello, Cocos2D-X for iOS! 在继续之前,确保你先下载最新版本的cocos2d-x。
随便在你的硬盘的某个位置上面解压就可以了。注意,这个解压出来的文件夹的完整路径名,我们之后会用一个统一的别名 $COCOS2DX_HOME来指代。 现在,你已经下载到源码了,让我们来安装项目
模板
个人简介word模板免费下载关于员工迟到处罚通告模板康奈尔office模板下载康奈尔 笔记本 模板 下载软件方案模板免费下载
吧~你可以先cd到$COCOS2DX_HOME这个目录(译者:指你刚刚解压缩代码的存放路径)下面去。在安装模板之前,先退出Xcode,然后打开一个终端,并输入下面的命令:cd$COCOS2DX_HOMEsudo./install-templates-xcode.sh-u
, 注意: 在上面所示的代码中,你不能直接输入$COCOS2DX_HOME,而要输入实际的路径。如果你直接输入了$COCOS2DX_HOME是不会有任何反应的。当然,你可以参考我写的《如何在macos下面配置集成ios和android游戏教程》,里面有讲到环境变量的配置。大概方法就是打开,/.bash_profile文件,然后用export来定义环境变量就ok了。 你可能会被要求输入管理员密码(加了-u应该是不需要输入密码的,不加-u就需要输入),之后的过程就非常简单了。在模板安装好之后,启动xcode,然后创建一个新的项目。这时,你可以在项目模板对话框中看到有cocos2d-x的模板了。不用担心,cocos2d-x的模板与cocos2d的模板并不会有冲突,因此,你还是可以创建cocos2d的项目。 让我们来试一下新模板吧~打开Xcode,然后创建一个新的工程,选择 iOS\cocos2d-x\cocos2dx模板 把工程命名为Cocos2DxFirstIosSample,然后保存。 现在,编译并运行,你将会看到cocos2d-x的hello wolrd程序跑起来了。
非常简单,不是吗,这时,你可以看看xcode里面的文件,特别是Classes\HelloWorldScene.H和Classes\HelloWorldScene.cpp。如果你也熟悉cocos2d的话,那么里面的代码看起来会觉得非常熟悉—几乎完全一样的cocos2d API,只是语言是c++而已~ 配置cocos2d-x的eclipse开发环境 现在我们已经完成了Xcode4的hello world程序了,是时候看看如何使用eclipse来配置android的cocos2d-x开发环境了。 这篇教程假设你有一个可以进行Android开发的标准开发环境。如果你还没有的话,可以参考这篇教程来配置,它里面提供了详细的过程,教你如何一步步配置好一个标准的eclipse android开发环境。 但是,请等一下。一个标准的eclipse android开发环境是专为java开发设计的,而cocos2d-x却是基于c++来做开发的~ 不用担心,eclipse已经有10年的历史了,它有许多插件可以支持其它语言的开发,这当然就包括c/C++语言的插件啦。先让我们来安装这个插件吧。打开eclipse,然后执行以下
步骤
新产品开发流程的步骤课题研究的五个步骤成本核算步骤微型课题研究步骤数控铣床操作步骤
:
? 从Eclipse IDE的主工具栏上面,选择Help/Install New Software。 ? 打开Work With复选框,并从中选择一个包含你的eclipse版本名称的项(如果是最新版的eclipse的话,就选择indigo)
? 在插件树里面找到Programming Languages (只有当你复选中“Group items by
本文由麦可网收集整理,转载请注明出处。
category”时,你才可以看到插件树。)并打开它.
? 选择CDT插件,然后安装下列组件。(但是,请注意,你如果直接就点击C/C++ Development Tools的话,你是得不到下图所示的样子的,你还需要在“Mobile Development”里面去查找相关的项) 点击next来完成向导,然后等待组件下载并安装。
现在,你可以使用eclipse来开发C/C++项目了~ Setup the Android NDK (Native
Development Toolkit) 本来,android开发只能采用java,而且现在市场上面大部分的app也是采用java写的。 然而,现在你还可以通过Native Development Toolkit
(NDK),使用C/C++来编写android程序。这种编程方式是由Google在2009年6月份引入的,它允许一些组件采用C/C++来编写,然后通过标准的Java Native Interface (JNI)
来调用。 安装NDK的过程非常简单:
? 下载最新版本的NDK。 here (注意选择 MacOSX 平台).
? 解压tar.bz2 到任意目录.之后,我会使用$NDKROOT来指定这个解压缩后的目录。 NDK给Android开发带来了全套的C/C++编译工具集,可以使用GCC4.4.3来编译来链接并且可以构建即时安装的APK包。 有了这套编译工具集,我们就可以在eclipse里面集成一些外部的C/C++库(比如cocos2d-x)。这些库被编译成动态库,然后通过JNI(Java Native Interface)与Java Android体系程序进行交互。 这些编译工具集可以采用下面两种方式使用 :
? 独立模式: 直接在你的makefile中使用 arm-linux-androideabi-g++. 这种方式会增加你的项目的复杂性和可维护性。我推荐你不要使用这种方式。
build shell 工具,它是一种高度可定制的? 集成模式: 使用$NDKROOT/ndk-
makefile,专门为NDK库所设计的。
解释JNI和NDK可能会花费大量时间,而且也超出了本教程的讨论范围。现在网络上有许多关于JNI的资源。这里还推荐一本书,它也讨论了JNI这个主
题
快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题
。 如果你需要更多关于NDK的信息,这里推荐一本非常好的书,它里面涵盖了使用C/C++进行NDK开发,书名是: Android Native Development Kit Beginner’s Guide。这本书覆盖了NDK编程的方方面面,可谓是“从入门到精通”,而且NDK本身也带有非常详细的文档,在$NDKROOT/docs路径下面。 Hello, Cocos2D-X for Android! 现在,让我们在Andriod平台上面来开发一个“Hello,World”程序吧,就像我们之前在ios平台上的程序一样。 我们需要通过命令行来完成工作,因为目前还没有在Eclipse IDE里面集成cocos2d-x的模板。 在$COCOS2DX_HOME目录下面包含一个shell脚本,叫做create-android-project.sh,我们可能通过它来创建android项目。但是,在运行脚本之前,我们需要在脚本文件的顶部做一些修改:
#setenvironmentparamtersNDK_ROOT_LOCAL="/home/laschweinski/android/android-ndk-
r5"ANDROID_SDK_ROOT_LOCAL="/home/laschweinski/android/android-sdk-linux_86"
, 修改上面这些行,把NDK_ROOT_LOCAL指向你安装Android NDK ($NDKROOT)的位置,同时把ANDROID_SDK_ROOT_LOCAL指向你安装Android SDK位置。(译者:这里其实可以不用修改,读者可以打开这个sh脚本去看看为什么。如果之前看过我的配置教程,里面有配置一个全局的NDK_ROOT和ANDROID_SDK_ROOT。这个脚本在判断有全局的环境变量存在的时候,会直接替代NDK_ROOT_LOCAL和ANDROID_SDK_ROOT_LOCAL。) 现在,可以运行create-android-project.sh脚本了,然后你会接收到一系列的提示输入。我们将一个个向您解释一下:
1. 第一个提示要求你“Input package path”。这个包名会给后面的java代码使用。你可以使用你的域名反过来写,类似写ios的bundle ID。比如
本文由麦可网收集整理,转载请注明出处。
com.yourdomain.samplecocos2dxandroid ,记住实际输入的时候要替换掉
“com.yourdomain”。
2. 接下来,你会得到一系列可用的Android API和它们的id号。这个具体取决于你的
机器上面安装的Andriod API的情况。
3. 最后,你需要提供项目的名称,在这里取名为samplecocos2dxandroid:
命令行的输出大致如下:bash-$./create-android-project.sh , Inputpackagepath.Forexample:org.cocos2dx.example , org.jymc.samplecocos2dxandroid
, ...
, AvailableAndroidtargets:
, ----------
? ...
,, ----------
,, id:9or"GoogleInc.:GoogleAPIs:15"
,, Name:GoogleAPIs
,, Type:Add-On
,, Vendor:GoogleInc.
,, Revision:1
,, Description:Android+GoogleAPIs
,, BasedonAndroid4.0.3(APIlevel15)
,, ...
,? inputtargetid:
,, 9
,, inputyourprojectname:
,, samplecocos2dxandroid
,, Createdprojectdirectory:/Users/jymen/development/cocos2dx/samplecocos2dxandroid
,, ...
,, Addedfile/Users/jymen/development/cocos2dx/samplecocos2dxandroid/AndroidManifest
.xml
,, Addedfile/Users/jymen/development/cocos2dx/samplecocos2dxandroid/build.xml
,, Addedfile/Users/jymen/development/cocos2dx/samplecocos2dxandroid/proguard.cfg
,, bash-$
,? 注意“Created project directory:”这一行是脚本文件最后输出来的,这个输出的路径也就是你的Andriod项目被创建好的路径。我这里指的是
/Users/jymen/development/cocos2dx/samplecocos2dxandroid,
注意: 不要把项目从一个地方移动到另一个地方。因为你如果随意移动,有些脚本文件
可以跑不起来。 构建工程 这里有两个步骤来构建项目—-首先通过命令行脚本编译c++
代码,然后通过ecipse来编译java代码。 为了编译c++代码,我们需要切换到
$PROJECT_HOME/android文件夹下面去,然后在终端里面输入下列命令:./build_native.sh ,, 你应该会看到下面类似的输出:
Gdbserver:[arm-linux-androideabi-4.4.3]libs/armeabi/gdbserver
,, Gdbsetup:libs/armeabi/gdb.setup
,, Compile++thumb:cocos2dlibs/armeabi/libcocos2d.so ,, Compile++thumb:cocosdenshionlibs/armeabi/libcocosdenshion.so
本文由麦可网收集整理,转载请注明出处。
,, Compile++thumb:game_logiclibs/armeabi/libgame_logic.so ,, Compile++thumb:gamelibs/armeabi/libgame.so ,, 这里就是在编译cocos2d-x库和你的项目里面的c++文件。 为了编译java代码,
我们需要创建一个eclipse工程—这可比命令行要方便多了。:) 打开Eclipse,然后他
吃软饭File\New\Other,选择Android\Android Project,然后点击Next,在Project Name里面输入samplecocos2dxandroid ,然后选择 Create project from existing source,然后浏览到$PROJECT_HOME/android文件夹。
,, 点击Next,选择一个 Android version to target 点击Finish,好了,现在你有
一个工程了~ 在左边的树上右击项目,选择Run As\Android Application,然后AVD (Android Virtual Device)就会启动,
然后就会跑出来Hello, Cocos2D-X项目了~
注意:如果程序没有启动的话,你需要按照提示去创建一个AVD来测试。更多的细节,
请参考Getting Started with Android Development 这篇教程。 恭喜你,你现在有一
个“Hello,World”项目可以同时跑在ios和android上面了~ 在Eclipse里面定义
一个结合java/c++的工程 通过命令脚本来编译c++代码,完了之后用eclipse来编译
java代码,这种来回切换的做法非常笨重。如果全部可以用eclipse来完成的话,那么
生活会更简单一些。 幸运的是,我们可以告诉eclipse,我们的android项目是一个集
成java/c++的跨语言项目~ 为此,我们在左边的项目树上选择samplecocos2dxandroid,然后从菜单里面选择File\New\Other,然后从对话框里面选择C/C++\Convert to a C/C++ Project。
点击Next。在下一个屏幕里面,选中你的项目,然后选择c++单选按钮,然后为Project type指定Makefile project\Other Toolchain,: 点击完成。这时eclipse会询问你
是否打开C/C++视图,当对话框出现的时候,选择NO。 接下来的步骤就是修改项目设
置,指定如何运行我们的make命令。在左边的项目树上,右击samplecocos2dxandroid工程,选择Properties,然后选择C/C++ build 取消“Use default build command”复选框,然后在build文本框中输入下面的命令:
bash${workspace_loc:/samplecocos2dxandroid}/build_native.shNDK_DEBUG=1V=1
,, 点击Apply,然后点OK。 回到eclipse,从主菜单中选择Project\Build All,这
时你可以在eclipse的控制台输出中看到c++ make在运行。
我们仍然有一些警告需要解决。想知道我是什么意思吗,你打开
jni/helloworld/main.cpp,这里你会看到一系列的警告,如下所示: 这些警告之所
本文由麦可网收集整理,转载请注明出处。
以会出现,是因为我们没有配置正确的c++包含路径。为了解决它,我们右击samplecocos2dxandroid工程,然后选择Properties\C/C++ General\Path and Symbols\GNU C++。 选择Add„按钮来选择下面的目录,之后点击Apply和OK。$(NDKROOT)/platforms/android-9/arch-arm/usr/include$(COCOS2DX_HOME)/cocos2dx/i
nclude
注意: 不用忘了使用实际的路径来替换掉$(NDKROOT) 和$(COCOS2DX_HOME)。
现在,你再看点击Apply,这时会提示你是否重建索引。直接点击yes继续就可以了。
看main.cpp,你会看到大部分警告已经消失了。 但是,AppDelegate.h文件还是找不到。这是因为AppDelegate.h是在$PROJECT_HOME\Classes文件夹下面。
这个文件夹对我们来说非常重要,因为它包含了我们工程里面的可移植的c++类,比如HelloWorldScene.cpp等。 当我们创建eclipse项目的时候,我们必须选择$PROJECT_HOME\android文件夹,因为eclipse需要一个AndroidManifest.xml文件。 但是,这样的话,我们的工程就不包括关键的“Classes”文件夹了,这也是为什么我们会得到这么多警告的原因。
让我们来修正它吧。右击samplecocos2dxandroid项目,选择Properties\C/C++ General\Paths and Symbols\Source location。点击Link Folder,然后复选中Link to a folder in the file system,接着浏览到$PROJECT_HOME文件夹,并指向Classes目录,最后点Apply和OK。 你现在可以在文件树里面看到Classes目录了,而且在main.cpp里面的#include “AppDelegate.h”警告也应该消失了。 Eclipse工程里面还会有许多警告,但是,这是因为eclipse对于解析c++头文件的能力并不强大。为了消除这些警告,我们又需要设置一下项目设置。(右键点工程,然后选择Properties),把Code Analysis部分的warnings关闭。 然后点击Apply和OK,这时,你就得到一个工程可以在eclipse里面进行编辑了。 What About the Java Code? 这时你在eclipse里面再找找看,你会在src和gen目录下面找到一些java代码,你肯定很好奇这些代码是干吗用的。 Andriod开发采用的主要语言是java,这个项目模板已经为我们创建了一些java框架代码,用来加载c++编写好的动态库。 一般情况下,你是不需要修改这些java代码的,但是,还是让我们来看看,
src\com\xxx\samplecosos2dxandroid\samplecocos2dandroid.java这个类。 这个类包含了主Android Activity类,当应用程序启动的时候会加载。它首先通过NDK来请求编译好的c++动态库。(如果采用的是最新版的coocs2dx的话,下面只会加载一个game库) 。由于类是从Cocos2dxActivity所派生,在后台cocos2d-x会把控制权移交给c++的AppDelegate的initInstance方法来处理,最后applicationDidFinishLAunching
方法也就被执行起来了。 因此,再重申一遍,java代码只是一些包装代码,大部分情况下我们都不要去修改它,因为我们的游戏逻辑是由c++写的。 连接andriod和ios项目结构 现在,我们有两个cocos2d-x的项目了,一个是ios下面的,一个是andriod下面的。我们的目标是让两个工程共享同样的目录,这样就可以使用同样的c++文件了。 我们两个项目里面,都有一个文件夹叫做“Classes”,它包含了我们的可移植的游戏代码。
如果你仔细看看eclipse和xcode里面的Classes目录,你会发现这些c++文件完全相等。因此,我们需要做的就是让两个项目指向同一个文件夹就ok了~ 为了实现这个目标,在xcode里面打开Cocos2DxFirstIosSample项目。选择Classes分组,然后点击Delete,选择“Move to Trash”; 接下来,右键Project Navigator,选择“New Group”,然后重命名为Classes。点键Classes,点击Add Files。然后选择$PROJECT_HOME\Classes目录,同时确保“Copy items into destination group’s folder”没有被选中~
本文由麦可网收集整理,转载请注明出处。
然后clean并rebuild xcode项目,并运行一下,确保一切ok。 恭喜,现在基础配置全部弄好了~你可以试着在eclipse里面修改,xcode这边运行,或者xcode里面修改,eclipse里面运行了。 什么时候使用 Xcode, 什么时候使用Eclipse? 现在,你有两个项目了,那么问题马上就出来了,我们到底什么时候该使用哪一个呢, 使用cocos2d-x通常的开发策略是,首先在ios上面通过xcode来测试,确认没问题后,再通过eclipse来测试。只需要在心里记住下面几点就行:
1. 经常测试.开发完一个小功能之后,就应该在andriod上面测试看行不行。这样的话,就不至于遇到问题找不到了。
2. 在多个设备上面测试: 现在市场上面有大量的android设备,而且它们的差别很细微,所以,你要尽可能多地测试多种不同型号的设备。 当然,你也可以先在andriod上面测试,然后再在ios上面测试。但是这样肯定会降低你的生产率。因为xcode比eclipse反应速度更快,而ios模拟器比android的模拟器的启动速度也要快一些。 调试技巧 在ios上面调试cocos2d-x和cocos2d的方法差不多,这里也没什么多讲的。 然而,对于Android,这里有几点需要注意下。 当使用NDK来调试的时候,一个“服务端的”gdb和gdbcontext被ndk-build shell脚本塞到APk里面去了。这个远程的gdb调试器可以与任何gdb兼容的客户端进行通信。 Eclipse里面最好的gdb agent就是 NVidia debug manager plugin,但是安装这个插件不在本教程的讨论范围之内。 注意: 如果你想安装NVidia Debug Manager plugin,你首先到这个页面下载完整的Tegra Android开发包,即便你可能现在并不需要它。然后,安装Tegra Developer,它会提示你安装哪些项,然后你可以选择NVidia Debug Manager plugin这个插件了。当你安装完之后,它并没有包插件安装到eclipse里面去,而是把zip文件放在你的硬盘的某个位置,你可以参考这个pdf文档来进行安装。 我发现在一些物理设备(比如Samsumg Galaxy S),remote debugger老是启动不了,但是使用AVD就可以正常启动。 为了启动一个debug会话,你可以选择你的项目,然后右击Debug As Android NDK application。 请注意,只有你安装了NVidia debug manager plugin,你才会在右击的时候看到Android NDK Application这个选项。 你可以在一行代码上面双击来设置一个断点。 当断点到达的时候,它将会停留在断点所在行,悲催的是,使用gdb来调试android有时候并不管用,所以,你可能需要添加一些额外的tracing系统。
你现在可以使用cocos2d-x来开发iphone和android下面的游戏了。
本文由麦可网收集整理,转载请注明出处。
韩非子名言名句大全,韩非子寓言故事,不需要的朋友可以下载后编辑删除~~
1、千里之堤,毁于蚁穴。——《韩非子?喻老》
2、华而不实,虚而无用。——《韩非子?难言》
3、欲速则不达。——《韩非子? 外储说左上》
4、不吹毛而求小疵。——《韩非子?大体》
5、胜而不骄,败而不怨。——《商君书?战法》
6、民之性,饥而求食,劳而求快,苦则求乐,辱则求荣,生则计利,死则虑名。 7、以子之矛,攻子之盾。——《韩非子?难一》
8、欲成其事,先败其事。
9、道私者乱,道法者治。
10、巧诈不如拙诚,惟诚可得人心。——《韩非子?说林上》
11、塞翁失马,焉知非福。——《韩非子?说难》
12、长袖善舞,多钱善贾。——《韩非子?五蠹》
13、明主之所导制其臣者,二柄而已矣。二柄者,刑德也。何谓刑德,曰:杀戮之谓刑,庆赏之谓德。
14、凡奸臣皆欲顺人主之心,以取亲幸之势也。是以主有所善,臣从而誉之;主有所憎,臣因而毁之。凡人之大体,取舍同者则相是也,取舍异者则相非也。
本文由麦可网收集整理,转载请注明出处。
15、人主之患在于信人。信人,则制于人。
16、故为人臣者,窥觇其君心也无须臾之休,而人主怠傲处其上,此世所以有劫君弑主也。 17、夫妻者,非有骨肉之恩也,爱则亲,不爱则疏。
18、智术之士,必远见而明察,不明察不能烛私;能法之士,必强毅而劲直,不劲直不能矫奸。
19、与死人同病者,不可生也,与亡国同事者,不可存也。
20、主失其神,虎随其后;主上不知,虎将为狗。
21、偏借其权势,则上下易位矣。此言人臣之不可借权势也。
22、故人行事施予,以利之为心,则越人易和;以害之为心,则父子离且怨。 23、故明主之治国也,明赏,则民劝功;严刑,则民亲法。
24、夫民之性,恶劳而乐佚。佚则荒,荒则不治,不治则乱,而赏刑不行于天下者必塞。
25、故治民无常,唯法为治。法与时转则治,治与世宜则有功。
26、明君无为于上,群臣竦惧乎下。
27、探其怀,夺之威。主上用之,若电若雷。
28、小信成则大信立,故明主积于信。赏罚不信,则禁令不行。
29、以肉去蚁蚁愈多,以鱼驱蝇蝇愈至。
30、爱臣太亲,必危主身;人臣太贵,必易主位。
31、群臣为学,门子好辩,商贾外积,小民右丈者,可亡也。
32、天下之难事,必作于易;天下之大事,必作于细。
33、圣人之治民,先治者强,先战者胜。
34、道在不可见,用在不可知。
35、涵掩其迹,匿其端,下不能原;去其智,绝其能,下不能意。
36、千乘之君无备,必有百乘之臣在其侧,以徙其民而倾其国;万乘之君无备,必有千乘之家在其侧,以徙其民而倾其国。
37、黄帝有言曰:上下一日百战。
38、臣主之利相与异者也。何以明之哉,曰:主利在有能而任官,臣利在无能而得事;主利在有劳而爵禄,臣利在无功而富贵;主利在豪杰使能,臣利在朋党用私。
本文由麦可网收集整理,转载请注明出处。
39、人主之道,静退以为宝。
40、故群臣陈其言,君以其言授其事,事以责其功。功当其事,事当其言,则赏;功不当其事,事不当其言,则诛。
41、自胜谓之强。(能够战胜自己的人才是强者)
42、自见之谓明。(能够认清自己的人才是明智的)
43、是以志之难也,不在胜人,在自胜也。故曰:自胜之谓强。(订下心愿,志向是难的,不在胜别人,而在战胜自己的懒怯疑。)
44、一手独拍,虽疾无声。(一只手击掌,即使再用力也不会有声音) 45、立志难也,不在胜人,在自胜。
46、举世有道,计入有计出。(做事情要有一定的原则,既要算计得道的,也要算计失去的) 47、故去喜去恶,虚心以为道舍。(所以应该将亲近好厌恶等情绪一并抛弃,才能成功地使用权谋之术)
48、君无见其所欲。(君主不应该
表
关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf
露自己的喜好)
49、去好去恶,臣乃见素;去旧去智,臣乃自备。(君主隐藏自己的好恶,才会得见臣下的本来面目;抛去旧有的成见,不显露自己的智慧,才会让臣下各守其职) 50、人主好贤,则群臣饰行以邀君欲,则是群臣之情不效。(君主喜欢任用贤能之士,那么臣下就会自我粉饰迎合来君主)(说明?还是让大家各司其职,别把希望寄托在个别的贤能之士身上,防止权利的偏移) 51、时有满虚,事有利害,物有生死。(时机的盈虚是并存的,世事的利弊是兼有的,事务的生死是一体的)(说明?君主不可因为这些不可避免的得失而怨怒) 52、见而不见,闻而不闻,知而不知。(看见就好像没看见,听到好像没听到,知道好像不知道)
本文由麦可网收集整理,转载请注明出处。
53、世有不可得,事有不可成。(世间总有得不到的东西,也总有办不到的事) 54、法莫如显,而术不欲见。(法一定要让人明了,而术一定不能被人觉察) 55、虚则知实之情,静则知动者正。(置身事外,才会看清真相;保持冷静,才能制定出行动原则)
56、群臣见素,则大君不蔽矣。(群臣本来的面目显现出来,那么君主就不会收到蒙蔽了) 57、是故去智而有明,去贤而有功,去勇而有强。(不用智慧可以明察,不显贤能可以成就大业,不逞勇武依然强大)
58、虚静无事,以暗见疵。(保持虚静无为的状态,往往会从隐蔽的角度得知他人的行为漏洞)
59、制在己曰重,不离位曰静。重则能使轻,静则能使躁。(权柄在手就是所说的重,不离本位就是所说的静。持重者能够控御轻浮者,宁静者能够克制急躁莽撞) 60、事在四方,要在中央。圣人执要,四方来效。(具体事务交由各级负责人去执行,而君主应保证中央权力的巩固。只要君主能在准确把握全局,那么四方的臣民就会效劳)--国家的大权,要集中在君主(“圣人”)一人手里,君主必须有权有势,才能治理天下。 61、烹小鲜而数挠之,则贼其泽;治大国而数变法,则民苦之。(烹调小鱼却屡次翻动,那就会令其破碎不全;治理大国却屡次更改法令,那就会使百姓不看其苦) 62、众人助之以力,近者结之以成,远者欲之以名,尊者载之以势。(众人会全力帮助 他,身边的人乐于结交他,远方的人真心赞誉他,权高位重的人也会推崇他) 63、君人者释其刑徳而使臣用之,则君反制于臣矣。(君主听凭臣下私自施予刑罚与恩德,这样一来就会反为臣下所控制)
64、君见恶,则群臣匿端;君见好,则群臣诬能。(如果是君主所厌恶的,那么群臣就会将其隐匿起来;如果是君主所喜好,那么群臣就会弄虚作假来迎合)
65、倒言反事以尝所疑。(故意正话反说或正事反做,来试探臣下
66、不为小害善,故有大名;不蚤见示,故有大功。(不被小事妨害自己的长处,所以能取得大名;不过早显示自己的才能,所以能成就大业)
67、行贤而去自贤之心,焉往而不美,(做贤德的事情却不以贤德自居,还有什么事是办不好的)
68、去其智,绝其能,下不能意。(君主隐藏智慧,不露才能,臣下就无法猜测他的意图) 69、虚则知实之情,静则知动者正。(置身事外,才会看清真相;保持冷静,才能制定出行动原则
本文由麦可网收集整理,转载请注明出处。
70、爱臣太亲,必威其身;人臣太贵,必易主位。(过于宠信臣下,必然会危及君主自身;臣下权势过重,必然有篡位之心)
71、人主无威而重在左右。(君主维修丧失转而要仰仗臣下了)
72、佯爱人,不得复憎也;佯憎人,不得复爱也。(假装憎恶,就无法对其再加以憎恶;假装憎恶,就无法再对其施以恩惠)
73、树橘柚者,食之则甘,嗅之则香;树枳棘者,成而刺人。故君子慎所树。(种植橘柚,吃起来是甜的,闻起来是香的;而种植荆棘,长大了却会刺伤人。)(说明?栽培人时应个格外谨慎)
74、世有不可得,事有不可成。(世间总有得不到的东西,也总有办不到的事) 75、存亡在虚实,不在于众寡。(一国的存亡要看权柄是否掌握在君主手里,而不应看国家武力的强弱)
76、一手独拍,虽疾无声。(一只手击掌,即使再用力也不会有声音) 77、不以智累心,不以私累己;寄治乱于法术,托是非于赏罚。(不因过度思考使内心疲惫,不因个人私欲而令自身受害;依据法令和权谋来治理国家,通过赏罚来彰显是非。)
78、圣人之道,去智去巧。智巧不去,难以为常。(圣人处世,是不需要智虑与机巧的。因为不抛弃智虑机巧,就很难维持长久。)
79、巧为輗,拙为鸢。(做车輗是聪明的,做木鸢却是愚笨的)(说明?考虑成本与实际功效)
80、荡而失水,蝼蚁得意焉。(鱼游到岸边搁浅的是时候,就会被蝼蚁吃掉) 81、事有举之而有败,而贤其毋举之者。(事情有做了却不成功的,但这也胜过不去做的)
本文由麦可网收集整理,转载请注明出处。
82、恬淡有趋舍之义,平安知祸福之计。(恬静淡泊之后才能把握取舍的原则,平稳安闲之后才能察知祸福的端倪)(说明?拒斥外界的诱惑)
83、太山不立好恶,故能成其高;江海不择小助,故能成其富。(泰山不以自己的好恶来选择土石,所以成就了它自身的高大;江海不分大小来容纳河流,所以成就了它的广博) 84、夫物者有所宜,才者有所施,各处其宜,故上下无为。(世间万物都各有特性,不同的才能有不同的施展方向,令有才干者各得其所,所以君主就可以无为而治。) 85、火形严,故人鲜灼;水形懦,人多溺。(火的形态看起来是严酷的,所以很少有人被灼伤;水的形态看起来是柔弱的,所以经常有人淹死)
86、故势不便,非所以逞能也。(所以,当形势不便时,是不应该逞强的) 87、使杀生之机,夺予之要在大臣,如是者侵。(生杀予夺之权落在臣下手中,如此一来君主就有失势的危机)
88、爱多者则法不立,威寡者则下侵上。(过于宠溺臣下,法令就难以确立。缺乏威严就会被臣下欺凌)
89、私行胜,则少公功。(营私舞弊之风盛行,臣下就不能尽职为君效力了) 90、诱道争远,非先则后也,而先后心皆在于臣,上何以调于马,(在路上赛马,不是领先就是落后,而此时还总是关注对手的话,又怎么能得心应手地驾驭自己的马呢, 91、且夫物众而智寡,寡不胜众,智不足以遍知物,故因物以治物。(相对于复杂的世事来说,个人的智慧是很渺小的,个人的渺小智慧难以处理繁杂事务,所以应该利用工具来处理事务)(比如?法律
制度
关于办公室下班关闭电源制度矿山事故隐患举报和奖励制度制度下载人事管理制度doc盘点制度下载
及司法人员的设置等)
92、去甚去泰,身乃无害。(行为不过度,才不会危及己身)
93、夫有材而无势,虽贤不能治不肖。故立尺材于高山之上,则临千仞之溪(xi1),材非长也,位高也。(有才干而没有权势,即使是贤人也无法控御不肖之徒。一尺长的木材树立在高山之上,就能俯瞰万丈深渊。这并非是木头长,而是它所处的地位高。) 94、故视强,则目不明;听甚,则耳不聪;思虑过度,则智识乱。(用眼过度,则视力下降;用耳过度,就会听力下降;用脑过度,就会思虑混乱)
95、利莫长于简,福莫久于安。(最大的利益莫过于简朴,最大的福泽莫过于安稳) 96、因可势,求易道。(根据可以成功的形势,来寻求易于成功的方法) 97、和氏之璧,不饰以五采。(像和氏璧那样的美玉,不必用五色饰物来装饰)
98、凡德者,以无为集,以无欲成,以不思安,以不用固。(凡是德都是因为无为而聚集,因无欲而成就,因不思而安稳,因不用而牢固
本文由麦可网收集整理,转载请注明出处。
韩非子寓言:
自相矛盾 郑人买履 讳疾忌医 杀猪教子 三人成虎 中饱私囊 子罕辞玉 守株待兔 滥竽充数 螳螂捕蝉 老马识途 宋人疑邻 和氏之璧 买椟还珠 揠苗助长 一鸣惊人 有的放矢 恶贯满盈 舍近求远 进退维谷
1、人生来就不是为了被打败的,人能够被毁灭,但是不能够被打败
2、胜利者一无所获。
3、没有失败,只有战死。
4、对一个作家最好的训练是—不快乐的童年。
5、二十世纪的丧钟为人类而鸣~
6、最后我觉得他自题的墓志铭也能表现出他的思想和语言特色:恕我不起来啦~
7、生活与斗牛差不多。不是你战胜牛,就是牛挑死你。
8、我多希望在我只爱她一个人时就死去。
9、所有的罪恶都始于清白。
10、只要不计较得失,人生便没有什么不能克服的~
本文由麦可网收集整理,转载请注明出处。
11、偏执是件古怪的东西。偏执的人必然绝对相信自己是正确的,而克制自己,保持正确思想,正是最能助长这种自以为正确和正直的看法。——海明威
12、每一个人都需要有人和他开诚布公地谈心。一个人尽管可以十分英勇,但他也可能十分孤独。——海明威
13、只向老人低头。
14、每个人都不是一座孤岛,一个人必须是这世界上最坚固的岛屿,然后才能成为大陆的一部分。