Include 如下例当你Include一个模块到某个类时, 相当于把模块中定义的方法插入到类中.它允许使用 mixin.它用来 DRY 你的代码, 避免重复.例如, 当你有多个类时, 需要相同的函数时, 可以把函数定义到module中, 进行include.下例假设模块Log和类TestClass在相同的.rb文件.如果它们存在于多个文件, 则需要使用 load 或 require 导入文件. module Log def class_type "This class is of type:…
由于 Objective-C 兼容 C 语言,所以导入文件时, 可以使用 #include,也可以使用 #import (Objective-C 新增的) 如: #include <stdio.h> // 和 #import <Foundation/Foundation.h> // 区别:#include 重复导入是会多次导入相同的文件: 而 #import 只会导入一次,不过一般的使用习惯是,如果是引入 C 语言就使用 #include, 如果是引入 Object-C 语言就是用…
include include是把module中定义的instance_method给mixin,然后当做类的实例方法使用(是因为module本身不能使用module的实例方法),给类进行实例化一个对象,然后对象再直接调用实例方法. module Mood def say p "hello, everyone!" end end class Person include Mood end Person.new.say #=>     "hello, everyone!&…
在inc1.ftl与inc2.ftl中的内容分别是: <#assign username="刘德华">与<#assign username="张学友"> 接着我在hello.ftl模版中用include将inc1.ftl包含进来 <#include "/inc/inc1.ftl">${username} 此刻获取的结果是:刘德华 接着我们在hello.ftl用include将inc1.ftl与inc2.ftl同…
在使用freemarker作为前端页面模板的应用中,会有很多的freemarker模板页面,这些ftl会在不同的页面中重复使用,一是为了简化布局的管理,二是可以重复使用一些代码. 在freemarker中可以通过以下两种方式来使用已经存在的模板.他们是<#inclue>和<#import>标签. 1.<#include> directive 该标签的作用是将便签中指定的路径的ftl文件导入到使用标签的ftl文件中,包括macro\funtion\variable等所有被…
ruby的变量有局部变量,全局变量,实例变量,类变量,常量. 1.局部变量 局部变量以一个小写字母开头或下划线开头 局部变量有局部作用域限制(比如一个block内),它的作用域起始于声明处,结束于该声明所在的块.方法定义.类/模块定义的结尾.大家在写代码时经常这样写: irb(main):001:0> i=123    ---------- 这里的i就是局部变量 =>123 irb(main):002:0> s="hi"   ---------- 这里的s就是局部变量…
如果字符串的行尾没有包含换行符,puts就会添加一个,但print不会: print会精确打印内容并让光标留在末尾(在某些系统平台,在程序输出的末尾会自动换行): p会输出一个审查字符串,它通常会包含一些额外的输出信息.…
三个方法的作用都是将一个字符串打印到控制台  比较项目  puts  print p   换行符 末尾添加换行符  末尾不加换行符  末尾添加换行符  非字符串对象的输出  调用该对象的to_s方法  调用该对象的to_s方法  通过inspect方法将对象转换成字符串 通过inspect方法将对象转换成字符串的方法能比to_s方法返回对程序员更加友好的对象表示. 比如,当要打印一个数组时,p输出采用的是数组字面量的表示法,而puts则只是简单的将每个元素打印到单独的一行! array =[2,…
前言 相信很多人都使用过export.export default.import,然而它们到底有什么区别呢? 在看他们之间的区别之前,我们先来看看它们的用法. ES6 import和export的用法 ES6之前已经出现了js模块加载的方案,最主要的是CommonJS和AMD规范.commonjs主要应用于服务器,实现同步加载,如nodejs.AMD规范应用于浏览器,如requirejs,为异步加载.同时还有CMD规范,为同步加载方案如seaJS. ES6在语言规格的层面上,实现了模块功能,而且…
Ruby中的include语句应注意以下两个问题: 1.include与文件无关.C语言中,#include预处理指令在编译期将一个文件的内容插入到另一个文件中.Ruby语句只是简单地产生一个指向指定模块的引用.如果模块位于另一个文件中,在使用include之前,你必须使用require(或者不那么常用的旁系,load)将文件加载进来. 2.Ruby的include并非简单的将模块的实例方法拷贝到类中,相反,它建立一个由类到所包含模块的引用.如果多个类包含这个模块,它们都指向相同的内容.即使当程…