当前位置: 首页 > news >正文

莆田做网站建设seo搜索引擎是什么意思

莆田做网站建设,seo搜索引擎是什么意思,做网站空间要多大,医院网站建设原理目录 函数模板基础 函数模板定义 函数模板实例 函数模板调用 函数模板本质 模板函数特化 模板参数限定 默认模板参数 多个模板参数 非类型模板参数 函数模板拓展 模板参数匹配规则 函数模板基础 函数模板定义 使用 template typename T​​​​​ 或 templ…目录 函数模板基础 函数模板定义 函数模板实例 函数模板调用 函数模板本质 模板函数特化 模板参数限定 默认模板参数 多个模板参数 非类型模板参数 函数模板拓展 模板参数匹配规则 函数模板基础 函数模板定义 使用 template typename T​​​​​ 或 template class T​​​​​ 语法来声明函数模板并在函数定义中使用模板参数。 template typename T T max(T a, T b) {return (a b) ? a : b; }函数模板实例 在使用函数模板之前需要进行模板实例化将模板参数替换为具体的类型。实例化可以通过显式指定模板参数或使用自动类型推导来完成。显式实例化可以使用类型​​​​的语法显式指定模板参数。例如maxint(5, 3)​​​​实例化了max​​​​函数模板为类型参数为int​​​​的版本。自动类型推导C11引入了自动类型推导允许编译器根据函数实参的类型推导出模板参数的类型。例如max(5, 3)​​​​可以自动推导为maxint(5, 3)​​​​。 函数模板调用 一旦函数模板实例化完成就可以像普通函数一样调用它。使用实际的参数来调用函数模板并根据实参类型匹配合适的模板实例。 int main() {int result1 maxint(5, 3); // 显式实例化为maxint(5, 3)返回5int result2 max(3, 5); // 自动类型推导为maxint(3, 5)返回5double result3 maxdouble(3.14, 2.71); // 显式实例化为maxdouble(3.14, 2.71)返回3.14double result4 max(2.71, 3.14); // 自动类型推导为maxdouble(2.71, 3.14)返回3.14return 0; }函数模板本质 int ​​​​ float ​​​​ 模板函数特化 模板特化允许为特定的类型提供特殊的实现。可以为函数模板提供显式的特化版本以处理特定类型的参数。 #include iostreamtemplate typename T T max(T num1, T num2) {return num1 num2 ? num1 : num2; }//函数模板特化 template const char* maxconst char*(const char* str1, const char* str2) {return strlen(str1) strlen(str2) ? str1 : str2; }int main() {auto ret1 max(222, 111); //maxint(222, 111);auto ret2 max(3.14f, 6.66f); //maxfloat(3.14f, 6.66f);auto ret3 max(Hell, World);return 0; }模板参数限定 #include iostreamtemplate typename Type Type Max(Type obj1, Type obj2) {static_assert(std::is_integralType::value || std::is_floating_pointType::value , Error Type CC);return (obj1 obj2) ? obj1 : obj2; }int main() {Max(111, 222); //MaxintMax(111.111, 222.222); //MaxfloatMax(Hell, World);return 0; }默认模板参数 可以为函数模板的模板参数提供默认值使得在使用函数模板时如果没有显式提供模板参数将使用默认值。 #include iostream// 带有默认模板参数的函数模板 template typename T int void printValue(T value 0) {std::cout value std::endl; }int main() {printValue(); // 使用默认模板参数 int默认参数值为 0printValue(5); // 使用默认模板参数 int指定参数值为 5printValue(3.14); // 推导为 double默认参数值为 0.0printValue(Hello); // 推导为 const char*默认参数值为 nullptrreturn 0; }多个模板参数 函数模板可以有多个模板参数。可以使用逗号分隔的方式声明多个模板参数并在函数定义中使用它们。 template typename T, typename U void printPair(T key, U value) {std::cout Key: key , Value: value std::endl; }非类型模板参数 C还支持非类型模板参数允许在模板中使用非类型的值作为参数。非类型模板参数可以是整数、指针、引用、枚举、指向成员的指针等。 #include iostream//多个模板参数 非类型模板参数 template typename T, int N T* CC_Alloc() {try{T* p new T[N];for (size_t i 0; i N; i){p[i] 0;}return p;}catch (const std::exception e){//std::bad::allocreturn NULL;} }int main() {auto* p CC_Allocint, 5();return 0; }函数模板拓展 模板参数匹配规则 当定义了多个模板参数则在函数内部必须使用否则编译器会报错 #include iostreamtemplate typename T, typename N T Fun(T t, T n) {return t; }int main() {//代码报错 - 未使用 NFun(1, 1);return 0; }类型形式参数表中可以使用typename​​​和class​​​ #include iostreamtemplate class T, class N T Fun(T t, N n) {return t; }int main() {//代码报错 - 未使用 Nreturn 0; }模板函数中参数不是基本类型时如果要想使用运算符操作需要类内部进行重载 #include iostreamclass Person { public:int m_Age;Person(int nAge): m_Age(nAge){}bool operator(const Person ref){return this-m_Age ref.m_Age ? true : false;} };template typename T T Max(T param1, T param2) {return param1 param2 ? param1 : param2; }int main() {Person p1(18);Person p2(28);auto p3 Max(p1, p2);return 0; }函数重载机制下的普通函数与模板函数调用顺序 #include iostreamtemplate typename T T Max(T param1, T param2) {std::cout 模板函数被调用了\r\n;return param1 param2 ? param1 : param2; }int Max(int param1, int param2) {std::cout 普通函数被调用了\r\n;return param1 param2 ? param1 : param2; }int main() {auto p1 Max(1, 2);auto p2 Maxint(1, 2);return 0; }函数模板的嵌套使用 #include iostreamtemplate typename T void OuterFunction(T value) {std::cout OuterFunction: value std::endl; }template typename T void InnerFunction(T value) {std::cout InnerFunction: value std::endl; }template typename T void NestedFunction(T value) {OuterFunction(value);InnerFunction(value); }int main() {int number 42;NestedFunction(number);std::string text Hello;NestedFunction(text);return 0; }
http://www.pierceye.com/news/683654/

相关文章:

  • 东莞购物网站如何建立免费个人网站
  • 网站个别页面做seo建立有效的什么机制
  • 学校网站建设模板wordpress 年月归档
  • 凡科做的网站行不行京东慧采入驻条件及费用2023年
  • 汽车网站建设页面网站建设营销公司
  • 可以写代码的网站有哪些问题微信公众号的推广
  • 网站建设项目怎么写新网站一般多久收录
  • 什么网站可以免费发广告合肥做网站一般多少钱
  • 企业网站优化的方式大安市网站
  • 镇江专业网站建设制作wordpress调查插件
  • 桂林网站制作多少钱最好的网站开发公司
  • 广州网站开发公司排名广州从化建设网站官网
  • 网站备案在杭州注册公司需要什么条件
  • 购买域名做销售网站可以吗河北邢台刚刚发布的紧急通知
  • 安溪建设局网站政务网站建设信息
  • 如何做公司自己的网站首页网站建设的钱计入什么科目
  • 网站建设公司行业免费下载网站模版
  • 海外做淘宝网站网站有关于我们的好处
  • 给别人做网站挣钱吗怎么建设推广网站
  • 南宁市网站开发深圳制作app
  • 临海大经建设集团网站雄安做网站
  • 网站设计多少钱通桥小学的网站建设
  • 上海制作网站的公司做彩票网站违法吗
  • ps软件手机版下载百度seo工具
  • 新乡网站关键词优化建设局网站信息管理制度
  • 海南论坛网站建设网站建设怎么放到云空间
  • 中山 灯饰 骏域网站建设专家网站建设需求范文
  • 东光网站建设淘宝店铺装修苏州网站建设服务
  • 平台型网站建设预算表哈尔滨网站制作多少钱
  • 手机网站焦点图装修房子的流程和顺序