using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace 裝飾者 { class Program { static void Main(string[] args) { ConcreteComponent con = new ConcreteComponent(); ConcreteDecoratorA a = new ConcreteDecoratorA(); a.SetComponent(con); a.Operation(); a.AddBehavior(); Console.WriteLine("============================"); ConcreteDecoratorB B = new ConcreteDecoratorB(); B.SetComponent(a); a.AddBehavior(); B.Operation(); B.AddBehavior(); } public abstract class Component { public abstract void Operation(); } abstract class Decorator : Component { private Component component; public void SetComponent(Component component) { this.component = component; } public override void Operation() { if (component != null) { component.Operation(); } } } class ConcreteDecoratorA : Decorator { public override void Operation() { base.Operation(); } public void AddBehavior() { Console.WriteLine("裝飾A類的操作!"); } } class ConcreteDecoratorB : Decorator { public override void Operation() { base.Operation(); } public void AddBehavior() { Console.WriteLine("裝飾B類的操作!"); } } public class ConcreteComponent : Component { public override void Operation() { Console.WriteLine("具體對象的操作!"); } } } }
這是結構體指針中的一個符號,給你寫個程序解釋一下吧,例如:
#include<stdio.h>
struct STU //定義一個結構體
{
int num;
}stu;
int main()
{
struct STU *p; //定義一個結構體指針
p=stu; //p指向stu這個結構體變量
stu.num=100; //給結構體成員num附個初值
printf("%d",p->num); //輸出stu中的num的值
return;
}
看到了吧,->的作法就是在引用結構體中的變量!!
形式如:p->結構體成員(如p->num)
他的作用相當於stu.num或(*p).num
不知道這樣解釋你明不明白、、、、、不懂了call我,O(∩_∩)O~
望采納。
這是結構體指針中的一個符號,給你寫個程序解釋一下吧,例如:
#include<stdio.h>
struct STU //定義一個結構體
{
int num;
}stu;
int main()
{
struct STU *p; //定義一個結構體指針
p=stu; //p指向stu這個結構體變量
stu.num=100; //給結構體成員num附個初值
printf("%d",p->num); //輸出stu中的num的值
return;
}
看到了吧,->的作法就是在引用結構體中的變量!!
形式如:p->結構體成員(如p->num)
他的作用相當於stu.num或(*p).num
不知道這樣解釋你明不明白、、、、、不懂了call我,O(∩_∩)O~
望采納。