zoukankan      html  css  js  c++  java
  • 关于函数模版的字符型数组的操练

    #include<iostream>
    using namespace std;
    
    template <typename A, typename A2>
    void sortArray(A *array, A2 size)
    {
    	A2 temp;
    	for (A2 i = 0; i < size; i++)
    	{
    		for (A2 j = i+1; j < size; j++)
    		{
    			if (array[i] < array[j])
    			{ 
    				temp = array[i];
    				array[i] = array[j];
    				array[j] = temp;
    			}
    		}
    	}
    }
    template <typename A, typename A2>//这里必须单独另加说明,否则导致错误
    void Myprint(A *array, A2 size)
    {
    	for (A2 i = 0; i < size; i++)
    	{
    		cout << array[i] << "  ";
    	}
    	cout << endl;
    }
    int main()
    {
    	int Myarray[] = { 2,4,6547,21436,435,12,546,1232 };
    	int size = sizeof(Myarray) / sizeof(*Myarray);
    	sortArray<int, int >(Myarray, size);
    	Myprint<int ,int >(Myarray, size);
    
    
    //	char Mychar[] = { 'q','d','s','a','g','e','o' };
    	char Mychar[] = "sjakfjsefdswfwe";//上下这两种的表示方法的区别,为什么第一个会出现乱码
    	 int size2 = strlen(Mychar);
    	sortArray<char , int >(Mychar, size);
    	Myprint<char , int >(Mychar, size);
    
    	cout << "我是漂亮的分割线|
    ";
    	char Mychar1[] = { 'q','d','s','a','g','e','o' };
    	int size3 = sizeof(Mychar1)/sizeof(*Mychar1);
    	cout << sizeof(Mychar1) / sizeof(*Mychar1)<<endl;
    	sortArray<char, int >(Mychar1, size3);
    	Myprint<char, int >(Mychar1, size3);
    
    	system("pause");
    }
    

      

  • 相关阅读:
    手机号码 正则表达式
    邮政编码的正则表达式
    对象为null,调用非静态方法产生空指针异常
    文件找不到异常(FileNotFoundException)
    数组下标越界异常解决方法
    空指针异常的解决方法
    需求:打印九九乘法表
    创建简单线程
    ·博客作业06--图
    博客作业05--查找
  • 原文地址:https://www.cnblogs.com/xiaochige/p/6703067.html
Copyright © 2011-2022 走看看