`

学到关于include的一点儿知识

    博客分类:
  • RoR
阅读更多
ruby 代码
  1. module Test   
  2.   module CachingMethods    
  3.     def self.included(base) #在此module被include的时候会自动调用   
  4.       base.send :attr_accessor:cached_references #base指的是调用此module的类   
  5.       base.extend ClassMethods    
  6.     end  
  7.   
  8.     module ClassMethods #ClassMethods应该是个特殊的module,定义在其中的方法都被视为类方法   
  9.       def cache   
  10.         p "In Extended Class Method"  
  11.       end  
  12.     end  
  13.   
  14.     protected   
  15.     def cached_references   
  16.       @cached_references ||=[]   
  17.     end  
  18.   end  
  19. end  
  20.   
  21. class A   
  22.   include Test::CachingMethods   
  23. end  
  24.   
  25. a = A.new  
  26. a.cached_references = %w{a b c e f}   
  27. p a.cached_references   
  28. p A.methods   
  29. p a.methods   
  30. A.cache   
分享到:
评论

相关推荐

    vscode检测到#include错误请更新includePath的解决方法.zip

    主要介绍了vscode检测到#include错误请更新includePath的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作 具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧 vscode检测到#...

    Include标签学习的demo

    例如,如果你的应用中有多处地方需要用到一个复杂的按钮或某个特定的视图组合,你可以将它们封装到一个单独的XML布局文件中,然后在需要的地方使用`<include>`来引入。这样可以显著减少代码量,同时便于后期修改和...

    C++知识点,学习c++

    一、#include “filename.h”和#include 的区别 #include “filename.h”是指编译器将从当前工作目录上开始查找此文件 #include 是指编译器将从标准库目录中开始查找此文件 二、头文件的作用 加强安全检测 ...

    include_EasyC_

    标题中的"include_EasyC_"可能是指一个关于C语言编程的学习资源集合,特别关注于让初学者理解如何在C程序中包含头文件。在C语言中,`#include`预处理器指令是用于引入其他源代码文件或标准库的头文件,以使用其中...

    jsp:include与include实探

    在Java Web开发中,`jsp:include`和`<jsp:include>`标签是两种常见的页面包含机制,它们用于将一个或多个动态或者静态资源合并到一个JSP页面中。这两种方式虽然看似相似,但有着本质的区别,理解它们的用法和区别...

    include 方法使用

    `include`标签是Android布局复用的重要工具,它允许开发者将一个布局文件嵌入到另一个布局文件中,从而减少代码重复,提高开发效率,并有助于维护。本篇文章将深入探讨`include`标签的使用方法及其注意事项。 ### 1...

    android xml中include标签的使用

    `<include />`标签是一个非常实用的功能,它允许我们将一个XML布局文件嵌入到另一个布局文件中,实现代码的复用和模块化。这个Demo将详细解释如何使用`<include />`标签以及其背后的原理。 ### 1. `<include />`...

    JSP:include和include指令区别

    在JavaServer Pages (JSP) 技术中,`<jsp:include>` 和 `<%@ include %>` 是两个用于页面组合的指令,它们虽然都用于将一个或多个文件的内容插入到主页面中,但它们的工作机制和使用场景有所不同。理解这两者的区别...

    NDK里的include文件夹

    2. **放置到NDK路径**:将解压后的`include`文件夹放到NDK的根目录下的`platforms\android-api版本号\arch-arm\usr\`路径。这里的`android-api版本号`是指你的项目所针对的Android API级别,例如`android-21`。`arch...

    asp动态include文件

    - **动态 Include:** 在 ASP 中,动态 Include 指的是在运行时动态地加载另一个 ASP 文件到当前页面的过程。这种方式可以提高代码的复用性,并且使得页面的更新更加灵活。 #### 内容详解 ##### Functioninclude...

    关于预处理指令#include的用法总结

    预处理指令#include是C/C++语言中用于文件包含的关键字,主要用于将指定的文件内容插入到当前文件代码中。这种指令在编译之前的预处理阶段执行,是编译器处理过程的第一步。通过使用#include指令,程序员能够把通用...

    jsp的Include方式

    在JSP中,`Include` 方式是实现页面组合的重要技术,它允许我们把多个页面的内容合并到一个主页面中,从而实现代码复用和页面布局的灵活管理。本文将深入探讨JSP的`Include` 方式的概念、类型以及使用方法。 1. **...

    Include.zipInclude.zipInclude.zip

    3. **编程中的#include**:在C/C++编程中,`#include`预处理器指令用于将一个源代码文件插入到当前文件中,通常用于引入头文件,这些头文件包含了函数声明、常量定义等。 4. **模块化编程**:在现代编程中,模块化...

    #include和#include””的区别

    这条指令将尝试在系统路径(如`D:\Program Files\Microsoft Visual Studio 8\VC\include\`)中查找`stdio.h`文件,并将其内容插入到当前源文件中相应的位置。这种方法主要适用于标准库提供的头文件,例如`stdio.h`、...

    实验5_使用include完善注册页面结构

    ### 实验5_使用include完善注册页面结构 #### 背景与目标 在Web开发过程中,为了提高代码的复用性和维护性,通常会采用模板引擎或包含...希望每位同学都能通过实践加深理解,并在未来的工作中灵活运用所学知识。

    jsp中两种包含关系(include动作和include指令)的区别

    `<jsp:include>` 是一个JSP标准动作元素,它的主要功能是在请求处理阶段动态地将一个页面的内容插入到当前页面。这意味着每次HTTP请求时,被包含的页面都会被重新评估和执行。例如: ```jsp <jsp:include page=...

    jsp的include的两种用法

    因此,`<%@ include file=” ”%>` 会将被包含文件的实际内容(代码段)参加到当前 JSP 文件中,合成一个文档,然后被 JSP 容器将它转换成 Servlet。 例如,在 test.jsp 文件中,我们可以使用 `<%@ include file=”...

    windows下调用openssl需要的include和lib

    描述中提到,这个压缩包已经包含了所有必要的文件,用户只需根据自己的需求,将`include`文件夹中的头文件复制到VC的include目录,将`lib`文件夹中的库文件复制到VC的lib目录。完成这一步后,你就可以在代码中#...

    include的使用方式

    在C语言编程中,`#include`指令是一个预处理器指令,用于在编译阶段将一个文件的内容插入到当前源文件中。这一特性极大地提升了代码的重用性和模块化,允许程序员将常用的功能封装到单独的头文件(通常扩展名为`.h`...

Global site tag (gtag.js) - Google Analytics